C# Proteklo vreme

U zadatku Proteklo Vreme, dobijam gresku RTE. Zamolio bih za pomoc gde je greska?

using System;

namespace Vezba
{
class Program
{
static void Main(string args)
{

        int HH1 = int.Parse(Console.ReadLine());
        int MM1 = int.Parse(Console.ReadLine());
        int SS1 = int.Parse(Console.ReadLine());
        int vreme1 = (HH1 * 3600) + (MM1 * 60) + SS1;
        
        int HH2 = int.Parse(Console.ReadLine());
        int MM2 = int.Parse(Console.ReadLine());
        int SS2 = int.Parse(Console.ReadLine());
        int vreme2 = (HH2 * 3600) + (MM2 * 60) + SS2;
        int proteklo_vreme = vreme2 - vreme1;

        int proteklo_vreme_sati = proteklo_vreme / 3600;
        int proteklo_vreme_minuti = (proteklo_vreme - (proteklo_vreme_sati * 3600)) / 60;
        int proteklo_vreme_sekunde = proteklo_vreme - (proteklo_vreme_sati * 3600) - (proteklo_vreme_minuti * 60);

        Console.WriteLine(proteklo_vreme_sati + ":" + proteklo_vreme_minuti + ":" + proteklo_vreme_sekunde);
    }
}

}

Zdravo,

Obrati pažnju na ulaz u zadatku. Vreme se unosi u jednom redu, a onda treba adekvatno da se podeli.

Ostatak zadatka bih rekao da radi kako valja :slight_smile:

Sada dobijam WA gresku…cak sam probao i da ubacim if da ne ide u minus.

using System;

namespace Vezba
{
class Program
{
static void Main(string args)
{
string input = Console.ReadLine().Split(‘:’, ’ ');
int hA = Convert.ToInt32(input[0]) * 3600;
int mA = Convert.ToInt32(input[1]) * 60;
int sA = Convert.ToInt32(input[2]);
int hB = Convert.ToInt32(input[3]) * 3600;
int mB = Convert.ToInt32(input[4]) * 60;
int sB = Convert.ToInt32(input[5]);

        int ukupnoA = hA + mA + sA;
        int ukupnoB = hB + mB + sB;

        if (ukupnoB > ukupnoA)
        {
            int final = ukupnoB - ukupnoA;

            int sat = final / 3600;
            int min = (final - sat * 3600) / 60;
            int sec = final - (sat * 3600) - (min * 60);
            Console.WriteLine(sat + ":" + min + ":" + sec);
        }
        else
        {
            int final = ukupnoA - ukupnoB;

            int sat = final / 3600;
            int min = (final - sat * 3600) / 60;
            int sec = final - (sat * 3600) - (min * 60);
            Console.WriteLine(sat + ":" + min + ":" + sec);
        }
        

    }
}

Zdravo,

Šaljem ti ispod kod koji prolazi test primere. Rekao bih da nisi lepo formatirao izlaz, i podelio ulaz. Probaj da uporediš detaljno ovaj kod i tvoj koda pa da sam dođeš do zaključka, a ako ne nađeš razliku, piši da prođemo :slight_smile:

Dajem ti ovako na kašičicu jer bi rekao da je najbolje da sam vidiš o čemu se radi :smiley:

using System;

class Program
{
static void Main()
{
// čita se ulaz u jednoj liniji
string input = Console.ReadLine();

    // ulaz se prvo deli na početno i finalno vreme
    string[] times = input.Split(' ');
    string[] startTime = times[0].Split(':');
    string[] endTime = times[1].Split(':');

    // sati, minuti i sekunde početnog vremena se dodeljuju u promenljive i konvertuju u int
    int startHour = int.Parse(startTime[0]);
    int startMinute = int.Parse(startTime[1]);
    int startSecond = int.Parse(startTime[2]);

    // sati, minuti i sekunde finalnog vremena se dodeljuju u promenljive i konvertuju u int
    int endHour = int.Parse(endTime[0]);
    int endMinute = int.Parse(endTime[1]);
    int endSecond = int.Parse(endTime[2]);

    // Prebacuje se u sekunde i onda se računa proteklo vreme
    int elapsedSeconds = (endHour * 3600 + endMinute * 60 + endSecond) -
                         (startHour * 3600 + startMinute * 60 + startSecond);

    // Proteklo vreme se vraća u format adekvatan za izlaz zadatka
    int elapsedHours = elapsedSeconds / 3600;
    int elapsedMinutes = (elapsedSeconds % 3600) / 60;
    int elapsedSecondsResidual = elapsedSeconds % 60;

    // Pri ispisu ulaza se zadaje adekvatan format tražen u zadatku
    Console.WriteLine($"{elapsedHours:D2}:{elapsedMinutes:D2}:{elapsedSecondsResidual:D2}");
}

}

Мислим да ти није тачан код, могу да проверим, али прилично сам сигуран да излазиш ван граница низа, што чини твој компјутер да прсне као пита!