Pascal

Modified: Wednesday, 22-12-2021 07:00 AM

Tạo Random 5 số phạm vi từ 1 đến 5

Kiểm tra xem các số đó thuộc trường Hợp nào sau đây:

  1. 5 số giống nhau
  2. 4 số giống nhau
  3. 3 số giống nhau + 2 số giống nhau
  4. 3 số giống nhau
  5. 2 số giống nhau + 2 số giống nhau
  6. 2 số giống nhau
  7. Không có số nào giống nhau

Nhấn 'Enter' để kiểm tra tiếp

Chương trình thoát khi nhấn 'ESC' trên bàn phím


uses crt;
var a:array[1..5] of byte;
    i,j,n,t:byte;

begin
    randomize;
    repeat
        for i:=1 to 5 do
        begin
            n := random(5)+1;
            a[i]:=n;
        end;
        for i:=1 to 4 do
            for j:=i+1 to 5 do
            if a[i]>a[j] then
        begin
            t:=a[j];
            a[j]:=a[i];
            a[i]:=t;
        end; 
        for i:=1 to 5 do write(a[i],#32);
            writeln;
        
        if a[1]=a[5] then 
            writeln('TH 1 - 5 so')
        else if (a[1]=a[4]) or (a[2]=a[5]) then 
            writeln('TH 2 - 4 so')
        else if (a[1]=a[3]) and (a[4]=a[5]) or (a[1]=a[2]) and (a[3]=a[5]) then 
            writeln('TH 3 - 2 so + 3 so')
        else if (a[1]=a[3]) or (a[2]=a[4]) or (a[3]=a[5]) then 
            writeln('TH 4 - 3 so')
        else if ((a[1]=a[2]) and ((a[3]=a[4]) or (a[4]=a[5]))) or ((a[2]=a[3]) and (a[4]=a[5])) then 
            writeln('TH 5 - 2 so + 2 so')
        else if (a[1]=a[2]) or (a[2]=a[3]) or (a[3]=a[4]) or (a[4]=a[5]) then 
            writeln('TH 6 - 2 so')
        else 
            writeln('TH 7 - Khong co so trung nhau');
        writeln('----------------')
        //readln;
    until readkey= #27;
end.