Program zamieniający minuty na godziny

Napisz program który na podstawie dowolnej ilości minut zwraca ile to jest całkowitych godzin i ile minut.

var l_min:word;l_godz:byte;
begin
write('Podaj liczbę minut: ');
readln(l_min);
l_godz:=l_min div 60;
l_min:=l_min mod 60;
write('Jest to ',l_godz,' Godzin');
if l_min > 0  then write(' i ',l_min,' Minut!');
readln;
end.

Poznajemy instrukcję warunkową if, oraz metody dzielenia, oraz uzyskiwania reszty.
Mod – reszta z dzielenia
Div – dzielenie przez liczby całkowite

Program dodaje liczby dopóki suma nie przekroczy wartości 100

Program dodaje liczby dopóki suma nie przekroczy wartości 100, po zakończeniu program ma zapytać czy kontynuować.

program dodawanie;
var wylacz:char;liczba:byte;dodaj:byte;
begin
repeat
liczba:=0;
while(100>=liczba) do
        begin
        write('Podaj liczb© którą mam dodać: ');
        readln(dodaj);
         liczba:= liczba+dodaj;
         writeln(liczba);
        end;
write('Kontynuować? t/n: ');
readln(wylacz);
until(wylacz='n');
end.

Prosty szyfrator i deszyfrator

Napisz program, który zaszyfruje słowa w obrazku.bmp, mając gotowy już wcześniej gotowy obraz bmp o wielkości 100px na 100px.

obraz 100 na 100

Słowa zapisane są jako obrazek bmp.

Szyfrator:

program szyfr;
var plik_z,plik_w:file of byte;
    i:word;
    x:byte;
    tekst:string;
begin
writeln('Podaj wyraz (do zaszyfrowania): ');
readln(tekst);
assign(plik_z,'c:\test\1.bmp');
assign(plik_w,'c:\test\2.bmp');
reset(plik_z);
rewrite(plik_w);
for i:=1 to 54 do
    begin
    read(plik_z,x);
    write(plik_w,x);
    end;
for i:=1 to length(tekst) do
    begin
    read(plik_z,x);
    write(plik_w,ord(tekst[i]));
    end;
for i:=55+length(tekst) to 30054 do
    begin
    read(plik_z,x);
    write(plik_w,x);
    end;
close(plik_z);
close(plik_w);
end.

Po szyfracji w lewym dolnym logu obrazka, piksele zmienią kolor. To Nasze literki zakodowane w RGB.

Nie można podawać znaku o wartości w ASCI 255.

Deszyfrator:

program deszyfr;
var plik_w:file of byte;
    i:word;
    x:byte;
    tekst:string;
begin
assign(plik_w,'c:\test\2.bmp');
reset(plik_w);
for i:=1 to 54 do
    begin
    read(plik_w,x);
    end;
repeat
read(plik_w,x);
write(char(x));
until x=255;
readln;
end.

Program liczący liczbę płyt

125 m chodnik składamy z 4 metrowych gotowych płyt ile płyt potrzeba na zbudowanie chodnika. Napisz program, który na podstawie podanych długości chodnika podaje ilość płyt.

program plyty;
uses crt;
const plyta=4;
var dlugosc:word;l_plyt:byte;
begin
write('Podaj dlugosc chodnika(w metrach):' );
readln(dlugosc);
l_plyt:= dlugosc div plyta;
if (dlugosc mod plyta) > 0 then
l_plyt:= l_plyt+1;
write('Musisz kupić ',l_plyt);
if(l_plyt=1) then write(' pˆłyte!')
else if(l_plyt<5) then  write(' płˆyty!')
else write(' płˆyt');
readln;
end.

const - stała, ustawiamy jaka jest stała długość płyty chodnikowej.

Program rysujący trójkąt równoramienny

Rysowanie trójkąta równoramiennego

Program rysujący trójkąt równoramienny, po podaniu jego wysokości. Pętla zagnieżdżona w pętli. Program zawiera również zabezpieczenie przed wpisaniem niepoprawnej wartości.

program trójkat;
Uses CRT;
var x,y,i,j,a,r:byte; h:longint;
begin
x:=40;
y:=1;
r:=1;
writeln('Rysuj trojkat ver 0.1 FINAL');
write('Podaj wysokość trójkąta(Mniej niż 25): ');
readln(h);
if(h>25) then
begin
repeat
write('Podaj poprawną warto˜ść: ');
   readln(h);
until h<25;
end;
Clrscr;
a:=h*2+1;
for i:=1 to h do
begin
GotoXY(x,y);
   for j:=1 to r do
        begin

             write('*');

        end;
           r:=r+2;
           y:=y+1;
           x:=x-1;
end;
readln;
end.

Uses crt; nie jest wymagane.

Szczęśliwa liczba z podanego numeru

Szczęśliwa liczba

Program sprawdzający czy dana liczba występuje w danym numerze telefonu.

program szczelb;
var numer,szczesliwa:string;i:byte;znalazlem:boolean;
begin
szczesliwa:='126';
write('Podaj numer telefonu(123456789): ');
readln(numer);
for i:=1 to 7 do
begin
if(numer[i]=szczesliwa[1])
and (numer[i+1]=szczesliwa[2]) and (numer[i+2]=szczesliwa[3]) then
znalazlem:=true;
end;
if(znalazlem=true) then writeln('Gratulujemy! Numer ',numer,' jest szczśliwy!');
readln;
end.

Program losujący 6 liczb z danego przedziału – Pascal lotto

Napisz program Lotto. Użytkownik ma podać 6 liczb. Program ma wylosować 5 liczb z danego przedziału i wyświetlić ile trafiliśmy.

program lotto;
var a:char;
    b:array[1..6] of byte;
    i,licznik,liczba:byte;
begin
randomize;
licznik:=0;
i:=1;
writeln('Witamy w programie Lotto. Nacisnij enter.');
readln;
writeln('Wybierz typ losowania a)Wybrane liczby b)Chybiˆł trafiłˆ');
readln(a);
if a='b' then
    begin
    repeat
    b[i]:=random(50);
    i:=i+1;
    until i=6;
    end;
if a='a' then
    begin
    repeat
    writeln('Podaj liczb©.');
    readln(b[i]);
    inc(i);
    until  i=6;
    end;
writeln('Twoje liczby to: ',b[1],' ',b[2],' ',b[3],' ',b[4],' ',b[5],' ',b[6],'.');
for i:=1 to 6 do
        begin
            liczba:=random(50);
            if b[i] = liczba then licznik:=licznik+1;
        end;
        write('Trafiˆe˜ ',licznik);
        if licznik=0 then
         write(' liczb!')
        else if licznik=1 then write(' liczbą!')
        else write(' liczby!');
readln;
end.

Strona wyszukana na takie tagi:

  • napisz program wylosujący liczby z przedziału

Losowanie liczb i sprawdzanie ile razy wylosowano daną liczbę z przedziału

Napisać program sprawdzający ile razy wylosujemy liczbę 15, losując 100 razy. Liczbę z przedziału od 1 do 50.

program losuj;
uses crt;
var ile,liczba:byte;
i:integer;
begin
randomize;
ile:=0;
i:=0;
while i<1000 do
  begin
	liczba:=random(25)*2+1;
	writeln(liczba);
	if(liczba=15) then ile:=ile+1;
	i:=i+1;
  end;
write('Liczb© 15 wylosowano ',ile,' razy!');
readln;
end.

Uses crt;

Strona wyszukana na takie tagi:

  • turbo pascal programy gotowe

Program zapisujący plan lekcji w pascalu

Plan lekcji w Pascalu

Napisz program, który zapisze podany plan lekcji do pliku tekstowego na wybrany dzień.

program lekcj2a;
var plik:text;p:char;
lekcja:string[20];
begin
assign(plik,'c:\plan_lekcji.txt');
rewrite(plik);
repeat
begin
write('Podaj dzień: ');
readln(lekcja);
writeln(plik,lekcja);
write('Zakończyc?t/n');
readln(p);
end;
until p='t';
close(plik);
end.

Do działania programu nie wymagane jest istnienie pliku plan_lekcji.txt. Program sam go utworzy!
Zapisywanie planu lekcji do pliku

Strona wyszukana na takie tagi:

  • pascal wyszków plan zajęć
  • pascal nysa plan lekcji
  • pascal wyszków plan lekcji

Pascal Anagramy

Napisz program, który poprosi nas o podanie słowa. Potem poprosi o podawanie liter i napisze czy da się z danego stringa, ułożyć to słowo.

Co to są anagramy?

Anagram – nazwa wywodząca się od słów greckich: ana- (nad) oraz grámma (litera), oznacza wyraz, wyrażenie lub całe zdanie powstałe przez przestawienie liter bądź sylab innego wyrazu lub zdania, wykorzystujące wszystkie litery (głoski bądź sylaby) materiału wyjściowego. W czasopismach szaradziarskich pojawiają się zadania polegające na odgadnięciu wykreskowanego anagramu na podstawie wierszowanego komentarza, a także anagramy rysunkowe polegające na ułożeniu hasła z wszystkich liter właściwego określenia rysunku. Formami spokrewnionymi z anagramem są stenoanagram, egzoanagram i endoanagram.
Źródło wikipedia

Dlaczego pascal? Projekt do szkoły, niebyło możliwości wybrania języka.

Anagram NP.
słowo -> owłos – Podane słowo to anagram.
adam -> adam – Podane słowa są takie same
adam -> dama -Podane słowa są anagramami, z danego ciągu słowo można
ułożyć 2 razy.
interpersonalizacja -> Słowo jest za długie – Oczywiście możemy usunąć pętle zabezpieczającą i delikatnie zmodyfikować program.
Zasada działania:

  1. Podajemy słowo: adam
  2. Wpisujemy po kolei litery d,a,m,a.
  3. Program sprawdza każdą literkę w ciągu, a gdy trafi na odpowiednią, usuwa ją z obiegu – zabezpieczenie, gdyby go nie było można byłoby podać słowo adam->damo i wyświetliłoby się że to anagram.
  4. Program liczy liczbę kombinacji
  5. Wyświetla wynik działania i i pyta o ponowne użycie

Program bada również kombinacje. Sprawdza także czy słowo nie jest za długie.

Pascal Anagramy:

program Anagramy;
uses crt;
var cache:boolean;slowo,podane:string;x,m,i,j,c,rozmiar,licznik,ile:byte;wylacz:char;l_wyst:array[1..17]of byte;
begin
repeat
begin
licznik:=0;ile:=0;slowo:='';podane:='';rozmiar:=0;cache:=false;licznik:=0;ile:=0;
write('Podaj słˆowo: ');
readln(slowo);
rozmiar:=length(slowo);
while(rozmiar > 17) do
begin
  writeln('Sˆłowo nie może być dˆłuższe niż 17 znaków!');
  write('Powtórz hasłˆo: ');
  readln(slowo);
  rozmiar:=length(slowo);
end;
        for m:=1 to rozmiar do
         begin
          write('Podaj ',m,' literę: ');
          readln(podane[m]);
          end;
for i:=1 to rozmiar do
begin
for j:=1 to rozmiar do
begin
 cache:=(slowo[i]=podane[j]);
  if(l_wyst[j]=2) then cache:=false;
if(cache=true) then
        begin
        licznik:=licznik+1;
        l_wyst[i]:=l_wyst[j]+1;
        end;
if (licznik>i) then
        begin
        licznik:=i;
        ile:=ile+1;
        end;
end;
end;
for c:=1 to rozmiar do l_wyst:=0;
if(licznik=rozmiar) then writeln('Sˆłowo ',podane,' to anagram ',slowo)
else writeln('Sˆowo nie jest anagramem');
if(ile<>0) and (licznik=rozmiar) then writeln('Z danego ciągu słˆowo ',slowo,' można uˆożyć ',ile,' razy!');
         writeln('Wyłączyć? t/n');
         wylacz:=readkey;
         end;
    until wylacz='t';
end.

Ten kod jest bardzo ciekawy, ponieważ delikatnie go rozbudowując możemy wyszukiwać, porównywać w plikach anagramy. Bardzo łatwo jesteśmy w stanie dostosować go do swoich potrzeb.

Posiadam kilka wersji tego programu. Jeżeli by ktoś potrzebował innych proszę pisać w komentarzach.

Strona wyszukana na takie tagi:

  • interpersonalizacja
  • interpersonalizacja co to znaczy
  • interpersonalizacja co to jest