5 svar
98 visningar
Hyper99 4
Postad: 17 dec 2023 18:36

Övning i att hitta fel i C#

Har i uppgift att hitta flera fel, den innehåller flera kompilerings fel samt ett logiskt fel som jag skall hitta och åtgärda.

Uppgiften:

static void Main(string[] args)
{
    int i = 0;
    while (i <= 24)
    {
        Console.WriteLine("Ange temperatur för timme " + 1 + ":");
        string str = Console.ReadLine();
        totalTemp = totalTemp + Convert.ToDouble(str);
        i++;
    }
    Console.WriteLine("Medeltemperaturen för dygnet är " totalTemp / 24 + " grader");

Detta har jag kommit fram till men det blir fel ändå, vet inte riktigt hur jag ska tänka på denna uppgiften.

static void Main(string[] args)
{
    int i = 0;
    double totalTemp = 0;
    while (i <= 24)
    {
        Console.WriteLine("Ange temperatur för timme " + 1 + ":");
        totalTemp = Convert.ToDouble(Console.ReadLine());
        i++;
        Console.WriteLine("Medeltemperaturen för dygnet är " + totalTemp / 24 + " grader");
    }
farfarMats 1096
Postad: 18 dec 2023 15:59 Redigerad: 18 dec 2023 16:09

Jag kan inte C# men skulle bli förvånad om du inte skulle behöva explicit konvertera totalTemp/24 till string innan du skriver.

Sen räknar du aldrig upp totalTemp utan får den sista timmens temp.

Och till sist ska du väl vänta med utskriften tills du samlat på dig de 24timvärdena.

Eller har du vänt på uppgift  och lösning???

 

I båda programmen går man väl 25varv i loopen, både i=0 och i=24.

anders_k Online 234
Postad: 24 dec 2023 12:12

Här är vad jag ser

// totalTemp måste deklareras utanför while loopen

...

while (i <= 24)  // hur många gånger loopar denna?

...

Console.WriteLine("Ange temperatur för timme " + 1 + ":");  // skall vara i, inte 1

...
// Formatering i din WriteLine är inte rätt, skriv så här istället

Console.WriteLine("Medeltemperaturen för dygnet är {0} grader", totalTemp/24.0);

Laguna Online 28602
Postad: 24 dec 2023 12:37

Var ser du det?

anders_k Online 234
Postad: 24 dec 2023 13:16
Laguna skrev:

Var ser du det?

vad menar du?

Laguna Online 28602
Postad: 24 dec 2023 23:20

Var kom de där kommentarerna ifrån?

Svara Avbryt
Close