• Lenguaje

    Pascal

  • Descripción

    Generar una serie de N temperaturas aleatoriamente expresada en °K. Imprimir su equivalencia en °C y °F. Determinar el estado:
    - Sólido < 0°C
    - Líquido > 0 < 100 °C
    - Gaseoso >100 °C
    - Promedio, mayor y menor temperatura.

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
47
48
49
50
51
52
53
54
55
program TemperaturasEnK;
uses crt;

var i, n : integer;
var grados_celsius, grados_fahrenheit, grados_kelvin, mayor, menor : real;
var promedio : real;
begin
    randomize;
    mayor := 0;
    menor := 0;
    promedio := 0;
    write ('Ingresa el valor de n: ');
    readln (n);
    for i:=1 to n do
    begin
        writeln ('PROCESO ', i);
        grados_kelvin := 1.0*random(600)-200+random(100)/100;
        grados_celsius := grados_kelvin-273.15;
        grados_fahrenheit := 1.8*(grados_kelvin-273.15)+32;
        promedio := promedio+grados_kelvin;
        if (i=1) and (menor>grados_kelvin) then
            begin
                menor := grados_kelvin;
            end;
        if (i=1) and (mayor<grados_kelvin) then
            begin
                mayor := grados_kelvin;
            end;
        if grados_celsius<=0 then
            begin
                writeln ('S'#162'lido');
            end;
        if (grados_celsius>0) and (grados_celsius<100) then
            begin
                writeln ('L'#161'quido');
            end;
        if grados_celsius>=100 then
            begin
                writeln ('Gaseoso');
            end;
        writeln ('Valor de grados celsius: ', grados_celsius:0:6);
        writeln ('Valor de grados fahrenheit: ', grados_fahrenheit:0:6);
        writeln ('Valor de grados kelvin: ', grados_kelvin:0:6);
        writeln;
    end;
    if n = 0 then
        promedio := 0
    else
        promedio := promedio/n;
    writeln ('Valor de mayor: ', mayor:0:6);
    writeln ('Valor de menor: ', menor:0:6);
    writeln ('Valor de promedio: ', promedio:0:6);
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.