Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hafta-2-Proje-4 #9

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified .DS_Store
Binary file not shown.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/node_modules
80 changes: 60 additions & 20 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ var sayilar = [45,856,12.5,63,0.02,154,2,54,78,61.7,654,26,12.5,63,969,152,32,31

//Örneğin çözümü:
function KareninAlani(kenaruzunlugu){
return kenaruzunlugu*kenaruzunlugu;
return Math.pow(kenaruzunlugu, 2);
}

/* (Oto test yok) Yukarıdaki KareninAlani fonksiyonunu kenar uzunluğu = 10 vererek aşağıda çalıştırıp, sonucu konsolda gözlemleyin (console.log) */


console.log(KareninAlani(10));

/* GÖREV 1:
- CemberinCevresi fonksiyonunu kullanarak aşağıdaki yönergeleri uygulayın:
Expand All @@ -29,14 +29,14 @@ function KareninAlani(kenaruzunlugu){
4. Hesaplanan çemberin çevresi döndürülecektir.
*/

function CemberinCevresi(/* kodlar buraya */){
/* kodlar buraya */
function CemberinCevresi(radius){
return 2 * pi * radius;
}


/* (Oto test yok) Yukarıdaki CemberinCevresi fonksiyonunu yarıçap = 5 vererek aşağıda çalıştırıp, sonucu konsolda gözlemleyin (console.log) */


console.log(CemberinCevresi(5));


/* GÖREV 2:
Expand All @@ -47,14 +47,14 @@ function CemberinCevresi(/* kodlar buraya */){
4. Hesaplanan çemberin alanı döndürülecektir.
*/

function CemberinAlani(/* kodlar buraya */){
/* kodlar buraya */
function CemberinAlani(radius){
return pi * Math.pow(radius, 2);
}


/* (Oto test yok) Yukarıdaki CemberinAlani fonksiyonunu yarıçap = 15 vererek aşağıda çalıştırıp, sonucu konsolda gözlemleyin (console.log) */


console.log(CemberinAlani(15));

/* GÖREV 3:
- Sayfanın en üstünde global değişken olarak tanımlanmış bir sayilar dizisi bulunmaktadır. Bu dizi içinde 0 ile 1000 arasında rasgele oluşturulmuş tam sayılar ve ondalıklı sayılar bulunmaktadır. Bu diziyi kullanarak aşağıdakileri uygulayın:
Expand All @@ -63,7 +63,7 @@ function CemberinAlani(/* kodlar buraya */){
3c. `ucetambolunenler` dizisindeki sayıların toplamını .reduce metoduyla bulup, sonucu `ucebolunenlerintoplami` değişkenine yazdırın (.reduce metodunu kullanın)
3d. `besyuzdenkucuksayilar` adında bir dizi oluşturarak, sayilar dizisinin içindeki 500'den küçük sayıları bu diziye atayın (.filter metodunu kullanın)
3e. besyuzdenkucuksayilar dizisindeki sayıları küçükten büyüğe sıralayıp `siralisayilar` adındaki bir diziye aktarın (.sort metodunu kullanın)
3f. `tekraredensayilar` adında bir dizi oluşturun. sayilar dizisi içerisindeki bazı sayılar birden fazla kere yazılmış. sayilar dizisi içerisinde birden fazla kez yazılmış sayıları tespit ederek kaç kere tekrar edildiğini belirten bir string oluşturulup `tekraredensayilar` dizisine aktarılmasını istiyoruz. Örnek string: "{sayı} sayısı {kere} tekrar edilmiştir"
3f. `tekraredensayilar` adında bir dizi oluşturun. sayilar dizisi içerisindeki bazı sayılar birden fazla kere yazılmış. sayilar dizisi içerisinde birden fazla kez yazılmış sayıları tespit ederek kaç kere tekrar edildiğini belirten bir string oluşturulup `tekraredensayilar` dizisine aktarılmasını istiyoruz. Örnek string: "{sayı} sayısı {tekrarSayisi} kere tekrar edilmiştir"
ÖRNEK: sayilar dizisi içerisinde 45 sayısı 3 kere yazılmış. "45 sayısı 3 tekrar edilmiştir" stringini `tekraredensayilar` dizisine aktaracağız.
💡 İPUCU: Tekrar edilen sayıları ve kaç kere tekrar edildiğini kaydetmek için bir nesne tanımlamalısınız, bu görevi yapabilmek için en az 2 kere döngü yazmalısınız. Birinci döngüde hangi sayının kaç kere tekrar edildiğini tespit edip, 2. döngüde stringi oluşturup verilen diziye aktarmalısınız.
*/
Expand All @@ -76,37 +76,77 @@ function CemberinAlani(/* kodlar buraya */){
var ucetambolunenler, enkucuk, enbuyuk, ucebolunenlerintoplami, besyuzdenkucuksayilar, siralisayilar, tekraredensayilar;

//3a çözümü

/* kodlar buraya */

enbuyuk = sayilar[0];
enkucuk = sayilar[0];
for(let i = 0; i < sayilar.length; i++){
if(sayilar[i] > enbuyuk){
enbuyuk = sayilar[i];
}
if(sayilar[i] < enkucuk){
enkucuk = sayilar[i];
}
}
console.log(enbuyuk);
console.log(enkucuk);


// 3b çözümü:

/* kodlar buraya */



ucetambolunenler = [];
sayilar.forEach((item) => {
if(item % 3 === 0)
ucetambolunenler.push(item);
});

console.log(ucetambolunenler);

//3c çözümü:

/* kodlar buraya */
ucebolunenlerintoplami = sayilar.reduce((total, item) => {
/* if(item % 3 === 0){
return total + item
} else{
return total
} */
let value = (item % 3 === 0 ? item : 0);
return total + value;
})
console.log(ucebolunenlerintoplami);



//3d çözümü

/* kodlar buraya */
besyuzdenkucuksayilar = sayilar.filter(i => i < 500)
console.log(besyuzdenkucuksayilar);



//3e çözümü

/* kodlar buraya */

siralisayilar = besyuzdenkucuksayilar.sort((a, b) => {
return a - b;
})
console.log(siralisayilar);

//3f çözümü

/* kodlar buraya */
let tekrarEdenSayilar = {};
sayilar.forEach(item => {
if(tekrarEdenSayilar[item] === undefined){
tekrarEdenSayilar[item] = 1
} else{
tekrarEdenSayilar[item]++
}
})
tekraredensayilar = [];
for(let key in tekrarEdenSayilar){
if(tekrarEdenSayilar[key] > 1){
tekraredensayilar.push(`${key} sayısı ${tekrarEdenSayilar[key]} kere tekrar edilmiştir`)
}
}
console.log(tekraredensayilar);



Expand Down
File renamed without changes.