• Lenguaje

    Pascal

  • Descripción

    La Federación Colombiana de Ciclismo, quiere mejorar los procesos de entrenamiento de sus deportistas, para ello se requiere diseñar un programa que permita llevar un registro completo de las sesiones de entrenamiento en circuitos cortos, por lo cual se necesita registrar el tiempo en segundos de cada una de las vueltas que el ciclista da al circuito, teniendo en cuenta que solo debe de parar la toma de registros cuando el entrenador lo indique, para posteriormente mostrar el siguiente consolidad de datos:
    - Promedio de tiempo por cada vuelta al circuito.
    - Mejor tiempo registrado
    - Peor tiempo registrado
    - Tiempo total en minutos empleado por el deportista.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
program FederacionColombianaDeCiclismo;
uses crt;

var mejor_tiempo, peor_tiempo, tiempo_en_segundos, tiempo_total_en_minutos, vueltas : integer;
var promedio_de_tiempo : real;
var tecla_repetir : char;
begin
    mejor_tiempo := 0;
    peor_tiempo := 0;
    tiempo_total_en_minutos := 0;
    vueltas := 0;
    promedio_de_tiempo := 0;
    repeat
        clrscr;
        write ('Ingresa el valor de tiempo en segundos: ');
        readln (tiempo_en_segundos);
        promedio_de_tiempo := promedio_de_tiempo+tiempo_en_segundos;
        tiempo_total_en_minutos := tiempo_total_en_minutos+tiempo_en_segundos;
        if (vueltas=0) or (mejor_tiempo>tiempo_en_segundos) then
            begin
                mejor_tiempo := tiempo_en_segundos;
            end;
        if (vueltas=0) or (peor_tiempo<tiempo_en_segundos) then
            begin
                peor_tiempo := tiempo_en_segundos;
            end;
        vueltas := vueltas+1;
        writeln;
        write (#168'Deseas repetir el proceso? (S/N): ');
        repeat
            tecla_repetir := readkey;
        until (tecla_repetir = 's') or (tecla_repetir = 'n') or (tecla_repetir = 'S') or (tecla_repetir = 'N');
    until (tecla_repetir <> 's') and (tecla_repetir <> 'S');
    if vueltas = 0 then
        promedio_de_tiempo := 0
    else
        promedio_de_tiempo := promedio_de_tiempo/vueltas;
    tiempo_total_en_minutos := (tiempo_total_en_minutos-tiempo_total_en_minutos mod 60)/60;
    writeln ('Valor de mejor tiempo: ', mejor_tiempo);
    writeln ('Valor de peor tiempo: ', peor_tiempo);
    writeln ('Valor de tiempo total en minutos: ', tiempo_total_en_minutos);
    writeln ('Valor de vueltas: ', vueltas);
    writeln ('Valor de promedio de tiempo: ', promedio_de_tiempo:0:6);
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.