START programy programowanie download linki o mnie... kontakt Księga Gości

Programowanie / Zadania do egzaminu z Programowania



Wszystkie zadania zostały napisane w Delphi 5, jednak powinny dać się skompilować bez większych problemów w nowszych wersjach Delphi. Do kompilacji zadań wystarczy wersja Personal.

W zadaniach znajdziesz dużą ilość komentarzy, zwłaszcza w miejscach, które mogłyby sprawić problemy z interpretacją kodu.

Chciałbym również zaznaczyć, że w programowaniu, podobnie jak w życiu, nie ma z reguły jedynego słusznego rozwiązania danego problemu i poniższe zadania można rozwiązać na wiele różnych sposobów. Część zadań z pewnością można było zrobić dużo lepiej i czytelniej. No cóż... Nie jestem wybitnym programistą.

Przy każdym zadaniu znajduje się link (odnośnik) do plików źródłowych konkretnego zadania. Jeśli chcesz ściągnąć wszystkie zadania w postaci jednego archiwum, zajrzyj do działu Download.



Zestaw 1

1. Program wczytujący liczby: x1, y1, x2, y2 oraz znak zn i rysujący na ekranie prostokąt o wierzchołkach (x1, y1) i (x2, y2) za pomocą znaku zn.
2. Program wczytujący z klawiatury łańcuch liter i zamieniający litery na parzystych (nieparzystych) pozycjach na duże.
3. Program wczytujący z klawiatury łańcuch cyfr i zamieniający kolejne cyfry na litery: 1 --> A, 2 --> B, 3 --> C, ..., 9 --> I, 0 --> J.
4. Program wczytujący z klawiatury liczbę całkowitą dodatnią i zamieniający jej kolejne cyfry na litery: 0 --> A, 1 --> B, 2 --> C, 3 --> D, ..., 9 --> J.
5. Program wczytujący łańcuch cyfr oraz łańcuch 10-znakowy, a następnie kodujący cyfry za pomocą znaków z łańcucha 10-znakowego: 0 --> znak nr 1, 1 --> znak nr 2 itd.
6. Program zapełniający tablicę 2-wymiarową rzeczywistymi liczbami losowymi z zakresu <0,10) i wypisujący na ekran sumę wszystkich wpisanych liczb.
7. Program wczytujący do tablicy łańcuchów ciągi znaków i wyznaczający liczbę elementów tablicy zawierających frazę (również wczytaną z klawiatury).
8. Program wczytujący do tablicy łańcuchów ciągi znaków i wyznaczający stosunek liczby cyfr do liczby liter w łańcuchach (globalnie).
9. Program inicjujący 2-wymiarową tablicę liczb całkowitych wartościami losowymi z zakresu <-99;99>, a następnie wypisujący:
  • Wartość największą w każdym wierszu
  • Wartość najmniejszą w każdej kolumnie
  • Średnią arytmetyczną wszystkich elementów tablicy
10. Procedura zwracająca (poprzez parametr) znak o największej liczbie wystąpień w pliku tekstowym, którego nazwa DOS-owa jest przekazana jako parametr.
11. Program wypisujący liczbę wystąpień każdego znaku pisarskiego w pliku tekstowym, którego nazwa DOS-owa jest przekazana jako parametr.
12. Funkcja zwracająca liczbę wystąpień frazy (przekazanej jako parametr) w pliku tekstowym (którego nazwa DOS-owa jest również przekazana jako parametr). W jednym wierszu pliku fraza może wystąpić więcej niż 1 raz.
13. Program wczytujący do tablicy łańcuchów zawartość pliku tekstowego w taki sposób, że każde słowo zapisane w pliku powinno się znaleźć w jednym elemencie tablicy. W pliku słowa są rozdzielane dowolną liczbą spacji (kilka słów może się znajdować w jednym wierszu pliku).
14. Program wypisujący informacje o plikach korzystając z procedur FindFirst i FindNext.
15. Programy z elementami grafiki (raczej dla Delphi):
  • wklejanie bitmap w fazie projektu i w czasie działania programu;
  • wykorzystanie komponentu TShape;
  • rysowanie prostych figur za pomocą metod: Line, Ellipse, FloodFill itp.



Zestaw 2

1. Program wyznaczający najmniejszy i największy element ciągu liczb całkowitych oraz średnią arytmetyczną wszystkich wyrazów ciągu bez gromadzenia danych w tablicy. Ciąg ma postać:
n = c1,c2,c3 ... cn
2. Program wyznaczający najmniejszy i największy element ciągu liczb całkowitych oraz średnią arytmetyczną wszystkich wyrazów ciągu bez gromadzenia danych w tablicy. Ciąg ma postać: c1,c2,c3, ...,ck 999. Liczba 999 nie należy już do ciągu (jest znacznikiem końca ciągu).
3. Program wczytujący liczby: x1,y1,x2,y2 oraz znak zn i rysujący na ekranie prostokąt o wierzchołkach (x1,y1) i (x2,y2) za pomocą znaku zn.
4. Program wczytujący z klawiatury łańcuch liter i zamieniający litery na parzystych (nieparzystych) pozycjach na duże.
5. Program wczytujący z klawiatury łańcuch cyfr i zamieniający kolejne cyfry na litery: 1 --> A, 2 --> B, 3 --> C, ..., 9 --> 1, 0 --> J.
6. Procedura zapełniająca tablicę 1-wymiarową o parzystej liczbie elementów całkowitymi liczbami losowymi z zakresu <-10,10> i wypisująca na ekran sumy kolejnych par elementów: a[1]+a[2], a[3]+a[4] itd.
7. Procedura zapełniająca tablicę 2-wymiarową rzeczywistymi liczbami losowymi z zakresu <0,10) i wypisująca na ekran sumę wszystkich wpisanych liczb.
8. Procedura zapełniająca tablicę 2-wymiarową o parzystej liczbie wierszy rzeczywistymi liczbami losowymi z zakresu <0,10) i zerująca parzyste wiersze tablicy.
9. Procedura wczytująca do tablicy łańcuchów ciągi znaków i wyznaczająca liczbę elementów tablicy zawierających frazę (również wczytaną z klawiatury).
10. Procedura wczytująca do tablicy łańcuchów ciągi znaków i wyznaczająca stosunek liczby cyfr do liter w łańcuchach (globalnie).
11. Funkcja przepisująca z pliku PLIK1 do pliku PLIK2 (PLIK1 i PLIK2 - nazwy DOS-owe plików tekstowych przekazane przez parametry) wiersze zawierające frazę wczytaną z klawiatury i zwracająca liczbę przepisanych wierszy.
12. Procedura zwracająca (przez parametr) znak o największej liczbie wystąpień w pliku tekstowym, którego nazwa DOS-owa jest przekazana jako parametr.
13. Procedura przepisująca dane z pliku tekstowego, którego nazwa DOS-owa jest przekazana jako parametr, do tablicy rekordów. W pliku każda dana jest zapisana w osobnym wierszu, kolejno:
imie: string[20]
wiek: integer
plec: char
pensja: real
W czasie przepisywania danych należy mężczyznom podnieść pensję o 10%.
14. Funkcja zwracająca liczbę wystąpień frazy (przekazanej jako parametr) w pliku tekstowym (którego nazwa DOS-owa jest również przekazana jako parametr). W jednym wierszu pliku fraza może wystąpić więcej niż 1 raz.
15. Funkcja zwracająca przez swoją nazwę średni wiek mężczyzn, o których informacje są zapisane w tablicy rekordów (o budowie jak w zadaniu 13), a przez parametr - imię mężczyzny o największej pensji.




Jacek Pazera