Pitanje za C# programere

poruka: 9
|
čitano: 2.308
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
14 godina
neaktivan
offline
Pitanje za C# programere

Pitanje za C# programere.
Zasto program ne ceka da se unese i druga vrijednost(nocnaTemperatura.vrijednost = Console.Read();)
i zasto ispisuje i za prvu unesenu vrijednost neki drugi broj(dnevnaTemperatura.vrijednost = Console.Read();)
Jasno mi je da je ovo neki jednostavna greska ali sam pocetnik i nemogu je naci
Hvala svakom ko zeli pomoci


using System;


class Temp
{

    public double vrijednost;



    public double toFahrenheit()
    {
        return (9.0/5.0*vrijednost+32);
    }


    public double toKelvin()
    {
        return (vrijednost + 273.15);
    }
}


class Glavna
{
    public static void Main()
    {
        Temp dnevnaTemperatura = new Temp();
        dnevnaTemperatura.vrijednost = Console.Read();

        Temp nocnaTemperatura = new Temp();
        nocnaTemperatura.vrijednost = Console.Read();


        Console.WriteLine(dnevnaTemperatura.vrijednost + " dnevna temp u C");
        Console.WriteLine(nocnaTemperatura.vrijednost + " nocna temp u C");
        Console.WriteLine();

        Console.WriteLine(dnevnaTemperatura.toKelvin()+" dnevna temp u K");
        Console.WriteLine();
        Console.WriteLine(dnevnaTemperatura.toFahrenheit() + " dnevna temp u F");


        Console.WriteLine(nocnaTemperatura.toKelvin() + " nocna temp u K");
        Console.WriteLine();
        Console.WriteLine(nocnaTemperatura.toFahrenheit() + " nocna temp u F");
        Console.WriteLine();


       
    }
}

 
0 0 hvala 0
16 godina
neaktivan
offline
RE: Pitanje za C# programere

Zamijeni

 

Console.Read();

 

sa

 

Convert.ToDouble(Console.ReadLine());

 

I na kraju stavi još jedan

Console.ReadLine();

 

Da aplikacija ostane vidljiva.

16 godina
neaktivan
offline
Pitanje za C# programere

 

Console.WriteLine("Dnevna u C?");

Temp dnevnaTemperatura = new Temp();

dnevnaTemperatura.vrijednost = Convert.ToDouble(Console.ReadLine());

 

Console.WriteLine(dnevnaTemperatura.vrijednost + " dnevna temp u C\r\n" + dnevnaTemperatura.toKelvin() + " dnevna temp u K\r\n" + dnevnaTemperatura.toFahrenheit() + " dnevna temp u F\r\n");

 

Console.WriteLine("Nocna u C?");

Temp nocnaTemperatura = new Temp();

nocnaTemperatura.vrijednost = Convert.ToDouble(Console.ReadLine());

 

Console.WriteLine(nocnaTemperatura.vrijednost + " nocna temp u C\r\n" + nocnaTemperatura.toKelvin() + " nocna temp u K\r\n" + nocnaTemperatura.toFahrenheit() + " nocna temp u F");

Console.ReadLine();

 

 

 

 

 

Ovako ima više smisla.

 
0 0 hvala 0
16 godina
neaktivan
offline
RE: Pitanje za C# programere

Možeš napraviti i samo parsanje  ....

 

 

Console.WriteLine("Unos temperature(dnevne) : ");
            Temp dnevnaTemperatura = new Temp();
            dnevnaTemperatura.vrijednost =
double.Parse(Console.ReadLine());//parsanje
            Console.WriteLine("Unesite nocnu temp: ");
            Temp nocnaTemperatura = new Temp();
            nocnaTemperatura.vrijednost =
double.Parse(Console.ReadLine());

 

Znači svaki unos stringa a koji mora biti double jednostavno parsaš....

 

 

ps moderatorima....zadnji red koda sam pokušao pod uredi tri-četiri puta ali jednostavno ne prihhvaća da se stavi u kod!?  :)

 

 

 

Private
Poruka je uređivana zadnji put čet 19.8.2010 12:10 (Private).
14 godina
neaktivan
offline
RE: Pitanje za C# programere

Hvala velika na pomoci.

Program sada radi

16 godina
neaktivan
offline
RE: Pitanje za C# programere

Recimo da bi ti program bio više Private upotrijebiš u klasi Temp svojstva(field)  ...:

 

     private double dnevnaTemp;
        private double nocnaTemp;

        public double NocnaTemp
        {
            get { return nocnaTemp; }
            set { nocnaTemp = value; }
        }


       

public double DnevnaTemp
{
  get { return dnevnaTemp; }
  set { dnevnaTemp = value; }
}

 

 

A u glavno programu :

 


 Console.WriteLine("Unos temperature(dnevne) : ");
           
            Temp dnevnaTemperatura = new Temp();
            dnevnaTemperatura.DnevnaTemp = double.Parse(Console.ReadLine());
            //dnevnaTemperatura.vrijednost = double.Parse(Console.ReadLine());
            Console.WriteLine("Unesite nocnu temp: ");
            Temp nocnaTemperatura = new Temp();
            nocnaTemperatura.NocnaTemp = double.Parse(Console.ReadLine());
            //nocnaTemperatura.vrijednost = double.Parse(Console.ReadLine());

 

            Console.WriteLine(dnevnaTemperatura.DnevnaTemp + " dnevna temp u C");
            Console.WriteLine(nocnaTemperatura.NocnaTemp + " nocna temp u C");
            Console.WriteLine();

            Console.WriteLine(dnevnaTemperatura.toKelvinD() + " dnevna temp u K");
            Console.WriteLine();
            Console.WriteLine(dnevnaTemperatura.toFarnehajtD() + " dnevna temp u F");


            Console.WriteLine(nocnaTemperatura.toKelvinN() + " nocna temp u K");
            Console.WriteLine();
            Console.WriteLine(nocnaTemperatura.toFarnehajtN() + " nocna temp u F");
            Console.WriteLine();

 

 

 

 

...samo sam napravio nove funkcije (metode) za izračun temperatura u klasi Temp ,znači sad je sve enkapsulirano.

 

 

 

 

Private
14 godina
neaktivan
offline
Pitanje za C# programere

Pocetnik sam u C# i zapinjem na najednostavnijim programima.

Hvala Base i Private-u sto su odvojili vrijeme da mi pomognu

 
0 0 hvala 0
16 godina
neaktivan
offline
RE: Pitanje za C# programere

...samo ti nastavi ,ako zapneš ovdje su forumaši Namigiva.

Private
16 godina
neaktivan
offline
Pitanje za C# programere

no problemo

 
0 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice