ZadaniaProgramowanie.pdf

(142 KB) Pobierz
1
(Studium Magisterskie , Studium Inżynierskie, Studium Zaoczne)
Zadania
Zadania z cz. I przeznaczone są głównie dla sem. II Studium Zaocznego, a
cz. II-V dla sem. IV Studium Magisterskiego i Studium Inżynierskiego.
I. Podstawy programowania (instrukcja warunkowa, pętle, instukcja przełącznikowa,
tablice jednowymiarowe).
Napisać następujące programy:
1. P. realizujący konwersję liczby naturalnej n z postaci dziesiętnej na postać binarną, oktalną
i heksalną.
2. P. wyznaczający reprezentację oktalną i heksalną liczby w oparciu o jej reprezentację
dziesiętną.
3. P. wczytujący dwie liczby naturalne n i m , dokonujący ich konwersji na postać binarną i
symulujący dodawanie binarne w kodzie binarnym naturalnym.
4. P. wczytujący dwie liczby naturalne n i m , dokonujący ich konwersji na postać binarną i
symulujący mnożenie binarne metodą przesuń-dodaj w kodzie binarnym naturalnym.
5. P. wczytujący liczbę całkowitą x i wyznaczający jej reprezentację w kodzie znak-moduł.
6. P. wczytujący liczbę całkowitą x i wyznaczający jej reprezentację w kodzie U1.
7. P. wczytujący liczbę całkowitą x i wyznaczający jej reprezentację w kodzie U2.
8. P. wczytujący dwie liczby całkowite x i y i symulujący mnożenie binarne tych liczb metodą
przesuń-dodaj.
9. P. wczytujący dwie liczby naturalne x i y i symulujący dodawanie tych liczb w kodzie U2 (
uwzględnić kontrolę poprawności wyniku).
10. P. wczytujący dwie liczby naturalne x i y i symulujący odejmowanie tych liczb w kodzie
U2 ( uwzględnić kontrolę poprawności wyniku).
11. P. wyznaczający n -bitową reprezentację binarną danego ułamka dziesiętnego.
12. P. wczytujący ciąg liczb rzeczywistych różnych od zera, oraz wypisujący sumę
elementów dodatnich oraz sumę elementów ujemnych. Wczytywanie ciągu ulega
zakończeniu po na wejście zera.
13. P., który wypisuje wszystkie czynniki pierwsze liczby naturalnej n ( n >=2).
1
INFORMATYKA, sem. IV
14 . n -cyfrowa liczba naturalna jest liczbą Armstronga , jeśli jest równa sumie n -tych potęg
swoich cyfr. Napisać program znajdujący wszystkie dwucyfrowe i trzycyfrowe liczby
Armstronga.
15. P. znajdujący najmniejszą liczbę naturalną n taką, że n dzieli
2 −
2
, ale nie dzieli
3 −
3
.
16. P. znajdujący dwie najmniejsze liczby naturalne , które można przedstawić na różne
sposoby jako sumę dwóch sześcianów liczb naturalnych.
17. P. znajdujący wszystkie liczby Fibonacciego mniejsze od liczby naturalnej n , które są
kwadratami lub sześcianami liczb naturalnych.
18. P. znajdujący największy wspólny dzielnik i najmniejszą wspólną wielokrotną danych n
liczb naturalnych.
19. P. znajdujący trzy najmniejsze liczby naturalne n , takie że pomiędzy n a n +10 nie ma
żadnej liczby pierwszej.
20. P. znajdujący pięć najmniejszych liczb naturalnych, takich że liczba
n
2
1
jest iloczynem
trzech różnych liczb pierwszych.
II. Funkcje (każda z funkcji powinna być przetestowana poprzez użycie w programie)
Napisać następujące funkcje:
1. F. zwracającą sumę swoich argumentów.
2. F.. przekazującą sumę swoich argumentów przez wskaźnik.
3. F. obliczającą n silnia.
4. F. wymieniającą wartości swych argumentów.
5. F. zwiększającą dwa pierwsze argumenty o wartość trzeciego argumentu.
6. F. realizującą konwersję liczby naturalnej na postać binarną.
7. F. wczytującą tablicę jednowymiarową oraz funkcję drukującą taką tablicę.
8. F. obliczającą w tablicy jednowymiarowej sumy elementów dodatnich, ujemnych i ilość
elementów zerowych.
9. F. obliczającą w tablicy jednowymiarowej sumę elementów parzystych i sumę elementów
nieparzystych.
10. F. odwracającą kolejność elementów w tablicy.
11. F. wyznaczającą minimalny i maksymalny element w tablicy jednowymiarowej.
12. F. sortującą tablicę metodą bąbelkową w zadany sposób( niemalejąco lub nierosnąco).
2
n
n
13. F. sortującą tablicę metodą prostego wybierania w zadany sposób (niemalejąco lub
nierosnąco).
14. F. zamieniającą kolejność elementów tablicy w taki sposób by elementy dodatnie znalazły
się na początku, później elementy ujemne, a na końcu elementy zerowe.
15. F. wyznaczającą wartość najczęściej występującą w tablicy i ilość wystąpień tej wartości.
16. F. przesuwającą wszystkie elementy tablicy o zadaną ilość pozycji w prawo, założyć, że
na skrajne pozycje z lewej wchodzą zera.
17. F. przesuwającą wszystkie elementy tablicy o zadaną ilość pozycji w prawo, założyć, że
na skrajne pozycje z lewej wchodzą zera.
18. F. przesuwającą wszystkie elementy tablicy o zadaną ilość pozycji w lewo, założyć, że na
skrajne pozycje z prawej strony wchodzą zera.
19. F. przesuwającą wszystkie elementy tablicy cyklicznie o zadaną ilość pozycji w lewo
(elementy o najniższych indeksach wchodzą kolejno na miejsce elementów o najwyższych
indeksach).
20. F. przesuwającą wszystkie elementy tablicy cyklicznie o zadaną ilość pozycji w prawo
(elementy o nawyższych indeksach wchodzą kolejno na miejsce elementów o najniższych
indeksach).
III. Tablice dwuwymiarowe(każda z funkcji powinna być przetestowana poprzez użycie
w programie)
Napisać następujące funkcje:
1. F. wczytującą tablicę 3x3.
2. F. drukującą tablicę 3x3.
3. F. tworzącą macierz jednostkową.
4. F. dokonującą transpozycji macierzy.
5. F. przepisującą tablicę dwuwymiarową do tablicy jednowymiarowej.
6. F. obliczającą wyznacznik macierzy 3x3 metodą Sarrusa.
7. F. obliczającą wyznacznik macierzy 4x4 przy wykorzystaniu funkcji z p.6.
8. F. obliczającą iloczyn macierzy 5x5.
9. F. zamieniającą miejscami dwie wybrane kolumny w macierzy.
10. F. zamieniającą dwa wybrane wiersze w macierzy.
3
11. F. obliczającą macierz odwrotną do danej macierzy 3x3.
12. F. obliczającą sumę elementów wybranej kolumny.
13. F. obliczającą sumę elementów wybranego wiersza.
14. F. wyszukującą liczbę najmniejszą i największą w tablicy dwuwymiarowej.
15. F. zliczającą ilość i sumę elementów należących do wybranego przedziału [a,b].
16. F. mnożącą każdy element tablicy dwuwymiarowej przez
(
− 1
i +
j
.
17. F. odwracającą kolejność elementów w wierszach o numerach parzystych.
18. F. odwracającą kolejność elementów w kolumnach o numerach parzystych.
19. F. tworzącą z danej macierzy ( n x m ) nową macierz poprzez usunięcie p -tego wiersza i q -
tej kolumny.
20. F. zwracającą listę (w postaci tablicy) numerów tych wierszy w tablicy dwuwymiarowej,
w których występuje dokładnie jeden element zerowy.
IV. Tablice znakowe (łańcuchy znaków)
Napisać nastepujące programy:
1. P. inicjujący łańcuch s1 pięcioma znakami oraz wczytujący łańcuch s2 i następnie
drukujący po trzy znaki z każdego łańcucha (zastosować odpowiedni format wydruku
łańcucha).
2. P. wczytujący dwa łańcuchy s1 i s2 i następnie tworzący łańcuch s3 złożony z łańcuchów
s1 i s2 rozdzielonych spacją.
3. P. obliczający we wczytanym łańcuchu s liczbę wystąpień zadanego znaku.
4. P. obliczający we wczytanym łańcuchu s liczbę wystąpień zadanej pary znaków.
5 . P. stosujący podstawowe funkcje łańcuchowe (strcpy, strlen, strcat, strchr, strstr, strrev,
strcmp, strupr, strlwr, itoa, atoi).
Napisać następujące funkcje (każda z funkcji powinna być przetestowana poprzez użycie w
programie) :
1. F. wczytującą łańcuch znaków.
2. F. tworzącą kopię łańcucha bez stosowania strcpy.
3. F. obliczającą długość łańcucha bez stosowania strlen.
4. F. realizującą konkatenację łańcuchów bez stosowania strcat.
4
5. F. alokującą pamięć dla łańcucha o zadanej długości.
6. F. zwracającą ilość wystąpień zadanego znaku w łańcuchu.
7. F. zwracającą ilość wystąpień zadanej pary znaków w łańcuchu.
8. F. usuwającą spacje wiodące (początkowe )w łańcuchu.
9. F. usuwającą spacje końcowe w łańcuchu .
10 . F. otrzymującą dwa łańcuchy zawierające liczby całkowite i zwracającą ich sumę w
postaci łańcucha.
11 . F. otrzymującą dwa łańcuchy zawierające liczby rzeczywiste i zwracającą ich sumę w
postaci łańcucha.
10. F. wymieniającą w łańcuchu wystąpienia ciągu znaków '2', '0', '0' ,'5' na '2', '0', '0' ,'6.'
V.Pliki
1. Utworzyć plik binarny a1.dat w bieżącym katalogu, następnie zrealizować następujące
operacje plikowe:
a) wczytać z wejścia zadaną ilość liczb typu int i zapisać je do pliku,
b) odczytać i wydrukować plik,
c) dopisać do pliku trzy zadane liczby, odczytać i wydrukować plik,
d) odczytać i wydrukować n ostatnich liczb z pliku,
e) zamienić miejscami drugi i czwarty element pliku,
f) obliczyć: sumy wszystkich elementów pliku, elementów dodatnich, elementów ujemnych,
ilość zer oraz sumę elementów parzystych,
g) wyznaczyć ilość wystąpień elementu o zadanej wartości, wydrukować numery pozycji na
których występuje,
h) wyznaczyć minimalny i maksymalny element pliku,
i) posortować plik niemalejąco bez przepisywania do tablicy.
2. Sprawdzić czy w katalogu Moje Dokumenty istnieje plik plik1.txt, jeżeli istnieje,
wyznaczyć jego rozmiar w bajtach.
3. Utworzyć w bieżącym katalogu kopię pliku a1.dat (z zad. 1) o nazwie b1.dat, porównać
długość oryginału i kopii, jeżeli zgadzają się, usunąć plik a1.dat.
4. Wydrukować plik B1.dat w odwrotnej kolejności elementów.
5. Wstawić wartość zero w określone miejsca pliku, pozycje wstawianych elementów pobrać
z wczytanej lub zainicjowanej tablicy. Sprawdzać czy wstawienie jest możliwe.
6. Dany jest plik liczb typu double plik1.dat, obliczyć sumy kolejnych par liczb i zapisać
sumy te do pliku plik2.dat.
5
Zgłoś jeśli naruszono regulamin