Skip to content

Instantly share code, notes, and snippets.

@andy922200
Last active March 25, 2019 22:14
Show Gist options
  • Save andy922200/9647d2ec9ebaa80485955ca7a3d85e37 to your computer and use it in GitHub Desktop.
Save andy922200/9647d2ec9ebaa80485955ca7a3d85e37 to your computer and use it in GitHub Desktop.
[JS101] 用 JavaScript 一步步打造程式基礎 - 練習題(二)
//印出多個星星(巢狀迴圈), console.log
function stars(n){
for(var i=1; i<=n; i++){
var result = ''
for(var j = 1; j<=i; j++){
result += '*'
}console.log(result)
}
}
stars(5)
//印出多個星星並加空行,return
function stars(n){
var result = ''
for(var j = 1; j<=n; j++){
result += '*'
}
return result
}
function makeStars(num){
var arr = []
for(var i =1; i<=num; i++){
arr.push(stars(i))
}
return arr.join('\n')
}
console.log(makeStars(5))
//1~N~1 顆樣式的星星
function stars(n){
var result = ''
for(var j = 1; j<=n; j++){
result += '*'
}
return result
}
function stars2(num){
for(var i=1; i<=num; i++){
console.log(stars(i))
}
for(var i=num-1; i>0; i--){
console.log(stars(i))
}
}
stars2(5)
//9*9乘法表
function table9to9(){
for(var i = 1; i<= 9; i++){
for(var j=1; j<=9; j++){
console.log( i + "*"+ j + "="+ (i*j))
}
}
}
table9to9()
// Recursion 遞迴
function fib(n){
if(n===0) return 0
if(n===1) return 1
return fib(n-2)+fib(n-1)
}
//倒著印出字串
function reverse(str){
for(var i = str.length-1; i>=0; i--){
console.log(str[i])
}
}
//轉換大小寫
function swap(str){
var result = ''
for(var i = 0; i<str.length; i++){
if(str[i] >= 'a' && str[i] <='z'){
result += str[i].toUpperCase()
}else if (str[i] >= 'A' && str [i]<= 'Z'){
result += str[i].toLowerCase()
}else{
result += str[i]
}
}return result
}
//找出陣列裡的最小值
function findMin(arr){
var min = arr[0]
for(var i = 1; i<arr.length; i++){
if (min > arr[i]){
min = arr [i]
}
}return min
}
//找出陣列裡第n小的值
function findMin(arr){
var min = arr[0]
var minIndex = 0
for(var i = 1; i<arr.length; i++){
if (min > arr[i]){
min = arr [i]
minIndex = i
}
}
return minIndex
}
function findNthMin(arr,nth){
for(var i=1; i<=nth-1;i++){
var minIndex = findMin(arr) //傳回最小值的陣列位置
arr.splice(minIndex,1) //刪除該位置的後一個數字,當進行n-1次後,就會得到所求
}
var realMinIndex = findMin(arr)
return arr[realMinIndex]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment