A ešte raz tie čísla...
Na tejto hodine sme si znova spomínali čísla, ale tentoraz aj prvočíslo. Nižšie mám uvedených niekoľko úloh, ktoré sa na hodine nestihli a musím si ich dokončiť.
Prvočíslo
Je to také kladné celé číslo, ktorého jedinými deliteľmi je 1 a on sám. Okrem 2 neexestuje žiadne ďalšie párne prvočíslo. Každé číslo väčšie ako 2 ktoré nie je prvočíslo je zložené číslo, a dá sa napísať ako súčin prvočísel. 1 a 0 sa nepovažujú za prvočísla, ale ani za zložené čísla.
Zaujímavosť: prvočísel je nekonečne veľa.
Úlohy, ktoré mi treba dokončiť:
Zisti či je číslo prvočíslo.
Nájdi všetky prvočísla v intervale.
Prípad obchodného cestujúceho
Prípad dispečera: dva vlaky ktoré sa stretávajú, každý má istú periódu za ktorú sa vráti na stanicu, vypíš všetky časy stretnutia od 6:00 do 18:00. (Ja som to robila od zadaného času do zadaného času.)
***
program vlaky;
uses Crt;
var H,M,S,A,B,C,D,C1,D1 : longint;
begin
clrscr;
S:=0;
writeln('Zadaj cas zaciatku v hodinach a minutach:');
readln(H); readln(M);
A:=H*3600+60*M+S;
writeln('Zadaj cas ukoncenia v hodinach a minutach:');
readln(H); readln(M);
B:=H*3600+60*M+S;
writeln('Zadaj periodu 1. vlaku v hodinach a minutach a sekundach:');
readln(H); readln(M); readln(S);
C:=H*3600+60*M+S;
writeln('Zadaj periodu 2. vlaku v hodinach a minutach a sekundach:');
readln(H); readln(M); readln(S);
D:=H*3600+60*M+S;
C1:=C;
D1:=D;
while C1<>D1 do
begin
if C1>D1 then
D1:=D1+D
else C1:=C1+C;
end;
while A begin
H:=(A div 3600);
M:=((A-H*3600) div 60);
S:=A-(3600*H)-(M*60);
writeln(H,' hod ',M,' min ',S,' sek ');
A:=A+C1;
end;
readln;
end.
***
Tento program je tu.
Tento program fungoval na princípe: ráta to v najmenšej jednotke v sekundách, čiže najprv všetko premení na sekundy. A potom zistí periódu v ktorej sa stretnú dva vlaky na tej stanici, a potom v zadanom časovom limite vypíše všetky časy kedy sa stretnú.
Aplikácia je tu.
Program obchodného cestujúce bez sekúnd
Mám program, ktorý to meria iba v minútach, pretože pôvodný program so sekundami mi najprv nefungoval(už funguje).
***
program vlaky1;
uses Crt;
var
H,M,A,B,C,D,C1,D1 : integer;
begin
clrscr;
writeln('Zadaj cas zaciatku v hodinach a minutach:');
readln(H); readln(M);
A:=H*60+M;
writeln('Zadaj cas ukoncenia v hodinach a minutach:');
readln(H); readln(M);
B:=H*60+M;
writeln('Zadaj periodu 1. vlaku v hodinach a minutach:');
readln(H); readln(M);
C:=H*60+M;
writeln('Zadaj periodu 2. vlaku v hodinach a minutach:');
readln(H); readln(M);
D:=H*60+M;
C1:=C;
D1:=D;
while C1<>D1 do
begin
if C1>D1 then
D1:=D1+D
else C1:=C1+C;
end;
while A
***
Tento program je tu.
Tento program fungoval na princípe: takom istom ako predošlý, ale všetko premieňa iba na minúty nie až na sekundy.
Aplikácia je tu.
Koniec hodiny.