Jump to content

Archived

This topic is now archived and is closed to further replies.

andzej157

C# - problem z kompilacją kodu

Recommended Posts

Tak szybko się zapytam tutaj, bo nie chcę zakładać nowego tematu:

mam w c# w aplikacji konsolowej taki kod

int wybor == Convert.Toint32(Console.Read());

i zamiast wartości (domyślnie 1-5) dostaje kod ascii danej wartości. Wie ktoś może jak to zmienić by to miało ręce i nogi?

Link to comment
Share on other sites

int wybor == Convert.Toint32(Console.Read());

Ja jestem w ogóle ciekaw, skąd u Ciebie wzięła się metoda Convert.Toint32 - w klasie Convert istnieje tylko taka z 'I' (a nie 'i').

Inna sprawa, że ciężko wyobrazić mi sobie jakieś wyrażenie (poza stringiem), którego częścią byłby ten Twój kod i które byłoby poprawne - mógłbyś wrzucić metodę, czy nawet całą klasę, w której ten kod się znajdował?

Link to comment
Share on other sites

42 minuty temu, webtom napisał:

int wybor == Convert.Toint32(Console.Read());

Ja jestem w ogóle ciekaw, skąd u Ciebie wzięła się metoda Convert.Toint32 - w klasie Convert istnieje tylko taka z 'I' (a nie 'i').

Inna sprawa, że ciężko wyobrazić mi sobie jakieś wyrażenie (poza stringiem), którego częścią byłby ten Twój kod i które byłoby poprawne - mógłbyś wrzucić metodę, czy nawet całą klasę, w której ten kod się znajdował?

 

1 godzinę temu, zsm1g92 napisał:

A mi nie wywala błędu ;)


int wybor = Convert.ToInt32(Console.ReadLine());

 

pisałem z pamięci xD

mój kod wygląda dokładnie tak:

 Console.WriteLine("hej, co chciałbyś dziś policzyć?");
            Console.WriteLine("1.Pole i obwód kwadratu?");
            Console.WriteLine("2.Pole i obwód prostokąta?");
            Console.WriteLine("3.Pole i obwód trójkąta?");
            Console.WriteLine("4.Pole i obwód koła?");
            Console.WriteLine("Wybierz odpowiednią opcję, wpisując odpowiedni numer.");
            int wybor = Convert.ToInt32(Console.Read());

            if (wybor == 1)
            {
                Kwadrat();
            }
            else if (wybor == 2)
            {
                Prostokat();
            }
            else if (wybor == 3)
            {
                Trojkat();
            }
            else if (wybor == 4)
            {
                Kolo();
            }

edit: lol, z ReadLine zamiast Read działa tak jak powinno. Dzięki za pomoc :)

Link to comment
Share on other sites

I linijka

int wybor = Convert.ToInt32(Console.Read());

wywalała Ci błąd, a z "==" już nie?
Czy może teraz wszystko już bangla? Pomijając oczywiście fakt, że użyłeś Read, a nie ReadLine, no i że Convert.ToInt32 rzuci wyjątkiem, jeżeli w konsoli ktoś wpisze coś innego, niż liczbę...

Tak swoją drogą, trzeba przyznać, że naprawdę klasowo zignorowałeś dobrą okazję na użycie konstrukcji switch (...) case ;)

2 godziny temu, andzej157 napisał:

Tak szybko się zapytam tutaj, bo nie chcę zakładać nowego tematu

Właściwie coś się to szybkie pytanie rozciągnęło, także na następny raz lepiej od razu załóż nowy temat.

Link to comment
Share on other sites

32 minuty temu, webtom napisał:

I linijka


int wybor = Convert.ToInt32(Console.Read());

wywalała Ci błąd, a z "==" już nie?

Tak jak wspomniałem, pisałem z pamięci i pomyliło mi się po prostu.

Po użyciu ReadLine wszystko działa jak w zegarku.

Link to comment
Share on other sites



  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...