Część, zacząłem się uczyć C# i chciałem napisac prorsty program który
zapyta o wiek -> uzytkownik poda jakas liczba -> twoj wiek to ...
ale nie działa
int = age;
Console.WriteLine("what is your age?");
age = Console.ReadLine(); (tu ma się zapytac o wiek zamierzenie)
age = Convert.ToInt32(age); (tu ma skonwertować)
Console.WriteLine("you age is " +age); (podaje wynik)
gdzie jest błąd (wydaje mi sie ze podczas konwersji string -> int, ale nie wiem jak to zrobic)
pozdrawiam
Czemu do int przypisujesz age?
Usuń znak równości pomiędzy int i age w pierwszej linijce.
nic to nie zmienilo :/
Console.WriteLine("what is your age?");
var age = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("you age is " + age);
dzięki :) ale chce to zrozumiec
mam pytanie do : var age = Convert.ToInt32(Console.ReadLine());
czemu var zamiast int? i czemu na koncu sa 3 )))? i gdzie tutaj consola zapyta nas o liczbe?
nowy123456789 napisał(a):
dzięki :) ale chce to zrozumiec
mam pytanie do : var age = Convert.ToInt32(Console.ReadLine());
czemu var zamiast int? i czemu na koncu sa 3 )))?
Może być i int. Co do tych nawiasów to przyjrzyj się uważnie i zobacz kiedy one są otwierane, a jak są otwierane to trzeba je też kiedyś zamknąć. Zresztą na końcu nie ma 3 nawiasów zamykających tylko 2.
i gdzie tutaj consola zapyta nas o liczbe?
Ta linijka odpowiada za pobranie wartości od użytkownika oraz konwersję na int.
var age = Convert.ToInt32(Console.ReadLine());
Mógłbyś to zapisać w taki sposób.
var age = Console.ReadLine(); // Pobierasz wartość od użytkownika
Convert.ToInt32(age); // Tu ją konwertujesz
dzięki wielki :))
Witam,
Kod dla LinqPad/Aplikacji konsolowej
string text = string.Empty;
do
{
Console.WriteLine("Podaj datę urodzenia:");
//text = Console.ReadLine();
text = Util.ReadLine();
if (int.TryParse(text, out int year))
{
Console.WriteLine($"Twój wiek to: {DateTime.Now.Year - year}");
}
else
{
Console.WriteLine("Niepoprawny format");
}
}while (text != "exit");
Pozdrawiam,
mr-owl
Jestem na etapie poznawania zmiennych i chciałem ten program napisać jak najłatwiej jak napisał GN ale dzięki mr owl może kiedyś twoj kod zrozumiem :))
nowy123456789 napisał(a):
Jestem na etapie poznawania zmiennych i chciałem ten program napisać jak najłatwiej jak napisał GN ale dzięki mr owl może kiedyś twoj kod zrozumiem :))
A co tutaj jest do rozumienia, deklaruję zmienną text która ma być typu string (ciąg znaków) i tam zapamiętuje dane które odczytałem z klawiatury. Są one typu string. W kolejnym kroku sprawdzam czy tekst który zapamiętałem da się przekształcić do liczby całkowitej, jeśli tak to wyświetlam go na ekranie a jeśli nie informuję że format danych jest nieprawidłowy.
$"Twój wiek to: {DateTime.Now.Year - year}"
można zamienić na:
int aktualnyRok = DateTime.Now.Year;
int wiek = aktualnyRok - year;
string wiadomość = string.Format("Twój wiek to: {0}", wiek);
Pozostaje jeszcze sprawa pętli która musi zostać wykonana przynajmniej raz. W pętli czekam na słowo kluczowe "exit" które kończy działanie pętli. Zainstaluj sobie LinqPad-a i wykonuj pod krok po kroku wyszukując w sieci objaśnień do słów kluczowych (if/else/do/while) i baw się zmieniając podany przykład.
Pozdrawiam,
mr-owl