Özet - Yeniden Kullanılabilir Kod Oluşturma
Coddy'nin GO Journey'sinin Temeller bölümünün bir parçası — ders 59 / 109.
Görev
KolayFarklı aktiviteler için basit bir kalori hesaplayıcı oluşturuyorsunuz.
Bir aktivite sırasında kaç kalori yakıldığını hesaplayan calculateCalories adında tek bir fonksiyon oluşturun.
Fonksiyon şunları yapmalıdır:
- Bir aktivite türü (string), dakika cinsinden süre (int) ve yoğunluk seviyesi (float64) almalıdır
- Aktivite türü, süre ve yoğunluğa göre yakılan kaloriyi hesaplamalı ve döndürmelidir
Normal yoğunlukta (1.0) dakika başına şu kalori oranlarını kullanın:
- Running: Dakikada 10 kalori
- Swimming: Dakikada 8 kalori
- Cycling: Dakikada 7 kalori
- Diğer tüm aktiviteler: Dakikada 5 kalori
Nihai kalori şu şekilde hesaplanmalıdır: temel kalori × süre × yoğunluk
Kendin dene
package main
import "fmt"
// calculateCalories bir aktivite sırasında kaç kalori yakıldığını belirler
// Parametreler:
// - activity: egzersiz türü ("running", "swimming", "cycling" veya başka herhangi bir aktivite)
// - duration: aktivitenin ne kadar süreyle yapıldığı (dakika cinsinden)
// - intensity: antrenmanın ne kadar yoğun olduğunu temsil eden bir çarpan (1.0 normaldir)
// Döndürür:
// - yakılan toplam kalori
func calculateCalories(activity string, duration int, intensity float64) float64 {
// TODO: Yakılan kalorileri şunlara göre hesaplamak için bu fonksiyonu uygulayın:
// 1. Aktivite türüne göre dakika başına temel kalori oranını belirleyin:
// - "running" 1.0 yoğunlukta dakikada 10 kalori yakar
// - "swimming" 1.0 yoğunlukta dakikada 8 kalori yakar
// - "cycling" 1.0 yoğunlukta dakikada 7 kalori yakar
// - Diğer tüm aktiviteler 1.0 yoğunlukta dakikada 5 kalori yakar
// 2. Toplam kaloriyi şu şekilde hesaplayın: temel kalori × duration × intensity
// 3. Hesaplanan kaloriyi döndürün
return 0 // Kendi uygulamanızla değiştirin
}
func main() {
// Fonksiyonu farklı aktivitelerle test edin
fmt.Println("Running for 30 minutes at intensity 1.2:", calculateCalories("running", 30, 1.2))
fmt.Println("Swimming for 45 minutes at intensity 1.0:", calculateCalories("swimming", 45, 1.0))
fmt.Println("Cycling for 60 minutes at intensity 1.5:", calculateCalories("cycling", 60, 1.5))
fmt.Println("Yoga for 60 minutes at intensity 0.8:", calculateCalories("yoga", 60, 0.8))
}
Temeller bölümündeki tüm dersler
4Karşılaştırma ve Mantıksal Operatörler
Karşılaştırma Operatörleri - Bölüm 1Karşılaştırma Operatörleri - Bölüm 2Mantıksal VE OperatörüMantıksal VEYA OperatörüMantıksal DEĞİL OperatörüOperatör Önceliği TemelleriÖzet - Karşılaştırma Yapma7Kontrol Akışı: Döngüler
`for` Döngüsü Nedir?`for` Döngüsü - Temel`for` Döngüsü - Sadece Koşul`break` Anahtar Kelimesi`continue` Anahtar Kelimesiİç İçe DöngülerÖzet - İşlemleri Tekrarlama2Değişkenler ve Temel Veri Tipleri
Değişken nedir?`:=` ile Tür ÇıkarımıTam Sayılar (int)Ondalıklı SayılarBooleanlarStringlerSıfır DeğerlerSabitlerİsimlendirme KurallarıÖzet - Değişkenler ve Türler5Temel Giriş/Çıkış
Biçimlendirilmiş ÇıktıBiçim BelirteçleriVeri Tiplerini YazdırmaTemel Kullanıcı Girdisi AlmaÖzet - Giriş ve Çıkış8Fonksiyonlar
Fonksiyonları AnlamakFonksiyon TanımlamaFonksiyonları ÇağırmaFonksiyon ParametreleriTek Bir Değer DöndürmeBirden Fazla Değer Döndürmeİsimlendirilmiş Dönüş DeğerleriFonksiyon Kapsamı TemelleriÖzet - Yeniden Kullanılabilir Kod Oluşturma3Temel Operatörler
Aritmetik OperatörlerBölme OperatörüModulo OperatörüAtama OperatörüBileşik Atama OperatörleriArtırma ve AzaltmaÖzet - Hesaplamalar6Kontrol Akışı: Koşullu İfadeler
`if` İfadesi`else` Anahtar Kelimesi`else if` Anahtar Kelimesi`if` İçinde Değişken GölgelemeDeğişkenleri Başlatma`switch` İfadesiİfadeli `switch`İfadesiz `switch``fallthrough` Anahtar KelimesiÖzet - Karar Verme