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

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 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.

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;

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 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.

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.

Strona wyszukana na takie tagi:

  • archiwum pascala

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:

  • lotto program

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 wyszków

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