Športni dan
Na športnem dnevu učenci tekmujejo v teku na 2600 metrov. Ob koncu športnega
dneva želite objaviti najhitrejši čas teka. Sestavi program, ki bo bral čase
teka v minutah in sekundah, dokler ne bo vnešeni čas 0 minut in 0 sekund, nakar
bo izpisal najhitrejši čas teka v minutah in sekundah.
Namig
Ko vnašaš rezultate, naj si program sproti zapomni, kateri rezultat je trenutno najhitrejši. Primerjanje bo lažje, če rezultat zapišeš v sekundah.
Rešitev (Java)
import javax.swing.JOptionPane;
public class SportniDan {
public static void main(String[] args) {
//preberemo cas prvega tekmovalca - ta je najmanjsi
String y1 = JOptionPane.showInputDialog("Vnesi minute: ");
String y2 = JOptionPane.showInputDialog("Vnesi sekunde: ");
int m = Integer.parseInt(y1);
int s = Integer.parseInt(y2);
int cas = m*60 + s;
int minCas = cas;
//primerjamo z ostalimi
while (cas > 0) {
y1 = JOptionPane.showInputDialog("Vnesi minute: ");
y2 = JOptionPane.showInputDialog("Vnesi sekunde: ");
m = Integer.parseInt(y1);
s = Integer.parseInt(y2);
cas = m*60 + s;
if (cas != 0 && minCas > cas) minCas = cas;
}
// najhitrejsi cas pretvorimov minute in sekunde
int min = minCas/60;
int sek = minCas%60;
System.out.println("Najhitrejsi cas je bil " + min + " min in " + sek + " s.");
}
}
Rešitev (C#)
using System;
using System.Collections.Generic;
using System.Text;
namespace SportniDan {
class SportniDan {
static void Main(string[] args) {
//preberemo cas prvega tekmovalca - ta je najmanjsi
Console.Write("Vnesi minute: ");
int m = Int32.Parse(Console.ReadLine());
Console.Write("Vnesi sekunde: ");
int s = Int32.Parse(Console.ReadLine());
int cas = m * 60 + s;
int minCas = cas;
//primerjamo z ostalimi
while (cas > 0) {
Console.Write("Vnesi minute: ");
m = Int32.Parse(Console.ReadLine());
Console.Write("Vnesi sekunde: ");
s = Int32.Parse(Console.ReadLine());
cas = m * 60 + s;
if (cas != 0 && minCas > cas) minCas = cas;
}
// najhitrejsi cas pretvorimov minute in sekunde
int min = minCas / 60;
int sek = minCas % 60;
Console.WriteLine("Najhitrejsi cas je bil " + min + " min in " + sek + " s.");
Console.ReadKey();
}
}
}
Rešitev (Python)
#!C:/Python30/python
#-*-encoding: utf-8 -*-
# -*- coding: latin-1 -*-
'''
Created on 22.6.2009
@author: fajdigap
'''
#preberemo cas prvega tekmovalca - ta je najmanjsi
m = int(input("Vnesi minute: "))
s = int(input("Vnesi sekunde: "))
cas = m*60 + s
minCas = cas
#primerjamo z ostalimi
while cas > 0:
m = int(input("Vnesi minute: "))
s = int(input("Vnesi sekunde: "))
cas = m*60 + s
if cas != 0 and minCas > cas:
minCas = cas
# najhitrejsi cas pretvorimov minute in sekunde
min = int(minCas/60)
sek = minCas%60
print ("Najhitrejsi cas je bil",min,"min in",sek," s.")