Węzly na km w C#


(Piotrswiniarski87) #1

witam, tak sobie czytam o C# i postanowiłem napisać programik, który by obliczał wezły na kilometry

i o to co stworzyłem, co o tym myślicie??

using System ;


class Zamiana {



public static void Main() 

{


Console.WriteLine(„Program obliczający węzły na kilometry ");



double a 

const double b=1,852;

double wynik;

Console.WriteLine(„Podaj dlugosc w wezlach!!");

a=Console.ReadLine();

wynik= a * b;

Console.Writeline(„a wezlow to =„ + wynik kilometrów);


}

(Adrian Bakowski) #2

Rozumiem, że masz problem z odpaleniem tego kodu. Moje poprawki to:

  1. przy wartościach z przecinkiem wpisujesz kropkę

  2. żeby przypisać wartość pobraną z konsoli do zmiennej typu double należy ją sparsować (double.Parse)

  3. przy wypisywaniu w konsoli podajesz najpierw cały tekst z zaznaczonym miejscem na zmienne, a dopiero poźniej zmienne.

Poprawny kod to:

using System;

using System.Collections.Generic;

using System.Text;


namespace programik

{

    class Program

    {

        static void Main(string[] args)

        {


Console.WriteLine("Program obliczający węzły na kilometry ");

double a;

const double b=1.852;

double wynik;

Console.WriteLine("Podaj dlugosc w wezlach!!");

a=double.Parse(Console.ReadLine());

wynik= a * b;

Console.WriteLine("{0} wezlow to = {1} km",a,wynik);

          }

    }

}

(somekind) #3

To nie Pascal, nie trzeba zmiennych deklarować na początku.

using System;


namespace Zmiana

{

    class Zmiana

    {

        static void Main(string[] args)

        {

            Console.WriteLine("Program przeliczający węzły na kilometry ");

            Console.WriteLine("Podaj długość w węzłach!!");

            double a = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine(a + " węzłów to " + a * 1.852 + " kilometrów");

            //druga wersja

            //Console.WriteLine("{0} węzłów to {1} kilomoetrów", a, a * 1.852);

        }

    }

}

(Piotrswiniarski87) #4

ok, dzięki na odpowiedzi.

A jak teraz bym chciał zrobić, żeby mieć wybór czy chce zamienić węzły na kilometry lub kilometry na węzły

to jakiej instrukcji powinienem użyć??


(Adrian Bakowski) #5

Proponuję użyć instrukcji switch-case będzie chyba najwygodniej np:

int a = int.parse(console.WriteLine());

switch (a)

{

case 1:

{

//instrukcje po wyborze 1

break;

}

case 2:

{

//instrukcje po wyborze 2

break;

}

//itd

default:

//instrukcja która wykona się domyślnie

}

(Piotrswiniarski87) #6

kurcze jakoś nie mogę sobie poradzić z tym switchem, nie za bardzo wiem gdzie mam go napisać.


(Adrian Bakowski) #7
using System;

using System.Collections.Generic;

using System.Text;


namespace programik

{

    class Program

    {

        static void Main(string[] args)

        {


            Console.WriteLine("Program obliczający węzły na kilometry ");

            double a;

            const double b = 1.852;

            double wynik;

            Console.WriteLine("Co chcesz na co przeliczyć? \n 1 - węzły -> kilometry \n 2 - kilometry na węzły");

            int x = int.Parse(Console.ReadLine());

            switch (x)

            {

                case 1:

                    {

                        Console.WriteLine("Podaj dlugosc w wezlach!!");

                        a = double.Parse(Console.ReadLine());

                        wynik = a * b;

                        Console.WriteLine("{0} wezlow to = {1} km", a, wynik);

                        break;

                    }

                case 2:

                    {

                        Console.WriteLine("Podaj dlugosc w kilometrach!!");

                        a = double.Parse(Console.ReadLine());

                        wynik = a / b;

                        Console.WriteLine("{0} kilometrów to = {1} węzłów", a, wynik);

                        break;

                    }

                default:

                    {

                        Console.WriteLine("Nie wybrałeś poprawnej opcji");

                    }

            }

        }

    }

}

Oto przykładowe zastosowanie funkcji switch