Alıştırma - Verileri depolamak için değişkenleri kullanma
Bu alıştırmada, konsola kod çıkışı veren programlar oluşturmayı öğreneceksiniz. Hesap makinesi programının başlangıcını oluşturacaksınız. Ayrıca, içinde hataları olan bir programı analiz edip hataları düzeltmeyi öğreneceksiniz.
Bir proje oluştur
Bir proje oluşturarak başlayalım. Yürütülebilir dosyayı kullanarak komut satırından dotnet
bir proje oluşturursunuz.
Konsolda
dotnet new
komutunu çalıştırın.dotnet new console --language F# -o Variables cd Variables
Bu komut, Değişkenler dizininde yeni bir F# projesi oluşturur.
main()
Program.fs dosyasında yöntemini bulun ve aşağıdaki kodu ekleyin:printfn "Welcome to the calculator program" // read input from the console and assign to `sum` let sum = 0 printfn "The sum is %i" sum
İlk satır, programın kullanıcısını kabul eder. İkinci satırda, bir sonraki alıştırma ünitesinde uygulayabileceğiniz kodu gösteren "//" ile başlayan bir açıklama vardır. O zaman var
let sum = 0
. Son olarak, hesaplama sonucunu tutan birsum
değişken oluşturun.İşleviniz
main()
şimdi şöyle görünmelidir:[<EntryPoint>] let main argv = printfn "Welcome to the calculator program" // read input from the console and assign to `sum` let sum = 0 printfn "The sum is %i" sum 0
komutunu çalıştırarak programı çalıştırın
dotnet run
.dotnet run
Aşağıdaki çıkışı görmeniz gerekir:
Welcome to the calculator program The sum is 0
Tebrikler! Bir projenin iskelesini oluşturmayı, daha büyük bir projeye başlamayı ve çalıştırmayı başardınız.
Hatayı düzeltme
Herhangi bir dilde programlamayı öğrenmenin bir parçası, derleme hatalarını tanımayı ve bunları düzeltmeyi öğrenmektir. Bu alıştırma için yeni bir proje iskelesi oluşturmanız gerekir. Devam etmeden önce dizin yapısında bir düzey yukarı olduğunuzdan emin olun.
komutunu çalıştırarak
dotnet new
yeni bir F# projesinin iskelesi oluşturun.dotnet new console --language F# -o Errors cd Errors
Yöntemin
main
aşağıdaki koda sahip olduğundan emin olun:[<EntryPoint>] let main argv = let aNumber = 0 printfn "Here's a number %s" aNumber 0 // return an integer exit code
Bahşiş
Bir saniye bekleyin ve önceki kodu okuyun. Kodun derlenmiş olacağını düşünüyor musunuz? Neden yarar veya yaramaz?
komutunu çalıştırarak projeyi çalıştırın
dotnet run
.dotnet run
Bu metne benzer bir hata iletisi görüntülenir:
/<path>/Errors/Program.fs(8,34): error FS0001: This expression was expected to have type 'string' but here has type 'int' [/<path>/Errors/Errors.fsproj] The build failed. Fix the build errors and run again.
Hata iletisinde "beklenen dize ama burada tür int" ifadesi yer alır. Sorunun ne olduğunu anlıyor musun? Sorun, işlevine türünde bir değişken
aNumber
sağladığınızprintfn
için%i
yerine biçimlendiricinin%s
kullanılmasıdır.int
Şimdi kodu düzeltelim."printfn "İşte bir sayı %s" aNumber" kodlu satırı bulun ve şu şekilde değiştirin:
printfn "Here's a number %i" aNumber
Dosyayı kaydedin ve ile
dotnet run
yeniden çalıştırın. Şimdi aşağıdaki çıkışı görmeniz gerekir:Here's a number 0
Tebrikler! Kodu okuyarak, neyin yanlış olduğunu anlayarak ve düzelterek bir programda hata ayıkladiniz. Hata iletilerini tanımak ve hataları düzeltmeyi bilmek, geliştirici olarak sahip olmak için temel becerilerdir.