Program číta čísla zo súboru až pokiaľ nenarazí na dve nuly za sebou
Delphi & Pascal (česká wiki)
Kategórie: Zadání z Pascalu
Program: Maxpostu.pas
Soubor exe: Maxpostu.exe
Potřebné: Maxpostu.txt
Program: Maxpostu.pas
Soubor exe: Maxpostu.exe
Potřebné: Maxpostu.txt
Program číta čísla zo súboru až pokiaľ nenarazí na dve nuly za sebou. Z načítaných čísel potom určí maximálne číslo.
{ MAXPOSTU.PAS Copyright (c) TrSek alias Zdeno Sekerak } { Program cita cisla zo suboru az pokial nenarazi na dve nuly za } { sebou. Z nacitanych cisel potom urci maximalne cislo. } { } { Datum:20.01.2005 http://www.trsek.com } program maximalna_postupnost; uses crt,dos; var vmax:integer; { maximalne cislo } vdlz:integer; { maximalna dlzka } max:integer; { maximalne cislo vramci postupnosti } dlz:integer; { dlzka aktualnej postupnosti } f:file of byte; { pre pracu so suborom } konc:boolean; { ak pride 00 nastavi na konc } cislo:byte; { cislo precitane zo suboru } begin writeln('Citam subor maxpostu.txt'); assign(f,'maxpostu.txt'); reset(f); konc:=false; cislo:=0; while(not(eof(f) or konc)) do begin { koniec postupnosti } if(cislo=0) then begin { splnuje podmienku maximalnosti } if(dlz>vdlz) then begin vdlz:=dlz; vmax:=max; end; max:=0; dlz:=0; end; read(f,cislo); cislo:=cislo-ord('0'); { aby to boli cisla 0..9 nie 48..57 } { prisli 2 nuly za sebou } if((cislo=0) and (dlz=0))then konc:=true; { maximalne cislo vramci postupnosti } if(cislo>max) then max:=cislo; inc(dlz); end; close(f); { vypiseme vysledok } writeln('Maximalne cislo je ',vmax,'. Postupnost bola dlha ',vdlz,' cisel.'); ReadLn; end.