From 17e6cbf712c58e8899d1d0a5ec4a729480181ad7 Mon Sep 17 00:00:00 2001 From: ouyazici Date: Fri, 3 Mar 2023 17:09:22 +0300 Subject: [PATCH] =?UTF-8?q?G=C3=B6rev=20Tamamland=C4=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.js | 84 +++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 65 insertions(+), 19 deletions(-) diff --git a/index.js b/index.js index 45ea598aa..9dfc2466a 100644 --- a/index.js +++ b/index.js @@ -6,16 +6,33 @@ const { fifaData } = require('./fifa.js') 💡 İPUCU: Öncelikle datayı filtrelemek isteyebilirsiniz */ + const final2014 = fifaData.filter((item) => { + return (item["Year"] === 2014 && item.Stage === "Final") + }) + +console.log(final2014); //(a) 2014 Dünya kupası Finali Evsahibi takım ismi (dizide "Home Team Name" anahtarı) +console.log(final2014[0]["Home Team Name"]); //(b) 2014 Dünya kupası Finali Deplasman takım ismi (dizide "Away Team Name" anahtarı) +console.log(final2014[0]["Away Team Name"]); //(c) 2014 Dünya kupası finali Ev sahibi takım golleri (dizide "Home Team Goals" anahtarı) +console.log(final2014[0]["Home Team Goals"]); //(d)2014 Dünya kupası finali Deplasman takım golleri (dizide "Away Team Goals" anahtarı) +console.log(final2014[0]["Away Team Goals"]); -//(e) 2014 Dünya kupası finali kazananı*/ +//(e) 2014 Dünya kupası finali kazananı*/ +if(final2014[0]['Home Team Goals']>final2014[0]['Away Team Goals']) +{ + console.log("Kazanan "+final2014[0]["Home Team Name"]); +} +else +{ + console.log("Kazanan "+final2014[0]["Away Team Name"]); +} /* Görev 2: Finaller adlı fonksiyonu kullanarak aşağıdakileri uygulayın: @@ -25,11 +42,14 @@ const { fifaData } = require('./fifa.js') 💡 İPUCU - verilen data içindeki nesnelerin(objects) "Stage" anahtarına bakmalısınız */ -function Finaller(/* kodlar buraya */) { +function Finaller(fifaArr) { - /* kodlar buraya */ + let finals=fifaArr.filter((item)=>{ + return (item.Stage==="Final") + }) + return finals; } - +console.log(Finaller(fifaData)); /* Görev 3: @@ -39,10 +59,17 @@ function Finaller(/* kodlar buraya */) { 3. Finaller data setindeki tüm yılları içeren "years" adındaki diziyi(array) döndürecek */ -function Yillar(/* kodlar buraya */) { - - /* kodlar buraya */ +function Yillar(fifaArr,callback) { + const finaller = callback(fifaArr); + const yillar = finaller.map(element => { + return element.Year; + }) + return yillar; } +console.log(Yillar(fifaData, Finaller)); + + + /* Görev 4: @@ -53,11 +80,23 @@ function Yillar(/* kodlar buraya */) { 💡 İPUCU: Beraberlikler(ties) için şimdilik endişelenmeyin (Detaylı bilgi için README dosyasına bakabilirsiniz.) 4. Tüm kazanan ülkelerin isimlerini içeren `kazananlar` adında bir dizi(array) döndürecek(return) */ -function Kazananlar(/* kodlar buraya */) { - - /* kodlar buraya */ - +function Kazananlar(data,callback) { + const finaller = callback(data); + let kazananlar = []; + finaller.forEach(item => { + if(item["Home Team Goals"] > item["Away Team Goals"]) + { + kazananlar.push(item["Home Team Name"]); + } + else + { + kazananlar.push(item["Away Team Name"]); + } + }); + return kazananlar; } +console.log(Kazananlar(fifaData,Finaller)); + @@ -72,11 +111,16 @@ function Kazananlar(/* kodlar buraya */) { 💡 İPUCU: her cümlenin adım 4'te belirtilen cümleyle birebir aynı olması gerekmektedir. */ -function YillaraGoreKazananlar(/* kodlar buraya */) { - -/* kodlar buraya */ - +function YillaraGoreKazananlar(data, cb_finaller, cb_yillar, cb_kazananlar) { + let arr = []; + let yillar =cb_yillar(data, cb_finaller); + let kazananlar = cb_kazananlar(data, cb_finaller); + kazananlar.forEach((item,i) => { + arr.push(`${(yillar[i])} yılında, ${item} dünya kupasını kazandı!`) + }) + return arr; } +console.log(YillaraGoreKazananlar(fifaData,Finaller,Yillar,Kazananlar)); /* Görev 6: @@ -93,11 +137,13 @@ function YillaraGoreKazananlar(/* kodlar buraya */) { */ -function OrtalamaGolSayisi(/* kodlar buraya */) { - - /* kodlar buraya */ - +function OrtalamaGolSayisi(arr) { + let toplamgol = arr.reduce((total,item) =>{ + return total + item["Home Team Goals"] + item["Away Team Goals"];},0) + return (toplamgol / arr.length).toFixed(2); } +console.log(OrtalamaGolSayisi(Finaller(fifaData))); +