Laboratorium ZAP
Zadania domowe - 2
Rekordy
1. Wczytać dane do n-elementowego wektora A (n – stała) o elementach Student, gdzie: Student – struktura (rekord) o
polach: nazwisko, ocena. Następnie wydrukować najwyższą ocenę i nazwiska studentów z tą oceną. Wydrukować też ilość
studentów z oceną z przedziałów: (0, 2), (3, 4), (4, 5).
2. Wczytać dane do n-elementowego wektora X (n – stała) o elementach Towar, gdzie: Towar – struktura (rekord) o polach:
nazwa, ilosc, cena, umieszczając: na początku wektora X towary o cenie mniejszej od 100 i na końcu pozostałe.
Wydrukować nazwy towarów o wartości (cena*ilosc) większej od średniej wartości towarów w wektorze.
3. Wczytać dane do tablicy prostokątnej X o w wierszach i k kolumnach (w, k – stałe) o elementach Tauto, gdzie: Tauto –
struktura (rekord) o polach: marka, rocznik, cena. Utworzyć wektor o k elementach, gdzie kolejne elementy zawierają
dane najdroższego auta z kolejnych kolumn tablicy. Wydrukować średnią cenę tych najdroższych aut.
4. Wczytać dane do tablicy kwadratowej X o n wierszach (n – stała) o elementach Tauto, gdzie: Tauto – struktura (rekord) o
polach: marka, rocznik, cena. W tablicy zamienić miejscami najstarsze auto z głównej przekątnej z najmłodszym autem
umieszczonym w ostatniej kolumnie.
5. Wczytać dane do tablicy kwadratowej A o n wierszach (n - stała) o elementach Punkt, gdzie: Punkt – struktura (rekord) o
polach: x,y. Policzyć i wydrukować, ile jest w tablicy punktów nad główną przekątną o odległości od początku układu
współrzędnych większej od 10, a ile większej od 20.
Pliki
1. Z pliku dane.txt, zawierającego liczby całkowite przepisać do pliku wyniki.txt co najwyżej 10 liczb podzielnych przez 3 z przedziału < a,b> (wartości a,b należy wczytać, wymuszając by podano a<=b). Wydrukować sumę liczb w każdym pliku.
2. Do pliku dane.txt wczytywać z klawiatury wiersze, aż do napotkania wiersza zaczynającego się literami: ZAP. Następnie z
tego pliku przepisać do pliku a.txt wiersze zawierające co najmniej dwie litery a. Wydrukować plik wynikowy.
3. Dany jest plik dane.pkt zawierający w każdym wierszu dwie liczby będące współrzędnymi (x,y) punktu. Przepisać z niego
do pliku o wczytanej nazwie punkty leżące na osi OX układu współrzędnych, a następnie dopisać do niego z tego pliku
(dane.pkt) punkty leżące na osi OY. Wydrukować, ile w pliku wynikowym zapisano punktów.
4. Z danego pliku a.aaa przepisać do pliku a.wyn dwa ostatnie wiersze, a następnie dopisać do niego na końcu trzy wczytane z
klawiatury wiersze. Wydrukować plik wynikowy.
Funkcje i tablice
1. Wprowadzić dane do tablic a,b[n][n] (n-stała). Wydrukować tablice w postaci tabelki. Dla każdej tablicy:
•
znaleźć i wydrukować najmniejszą wartość drugiej przekątnej,
•
wyzerować wiersze o sumie elementów większej od 45 w tablicy a, a w tablicy b większej od 30,
•
wydrukować elementy kolumn, w których pierwszy element ma wartość parzystą, a ostatni nieparzystą.
2. Wprowadzić dane do tablic x,y [n][n] (n-stała). Dla każdej tablicy:
•
znaleźć i wydrukować największą wartość leżącą pod główną przekątną,
•
do kolumn zawierających ujemne i dodatnie wartości wpisać wartość jej pierwszego elementu,
•
wydrukować indeksy wierszy i jego ujemne elementy, gdy suma jego wartości jest: mniejsza od 10 w tablicy x, a w
tablicy y mniejsza od 15.
3. Wprowadzić dane do tablic x, y[w][k] (w,k-stałe). Dla każdej tablicy:
•
w każdej kolumnie największe wartości umieścić w jej ostatnim elemencie,
•
wydrukować wartości wierszy, w których największa wartość jest podzielna: w tablicy x przez 3, a w tablicy y przez 5,
•
policzyć i wydrukować, ile posiada wierszy zawierających tylko wartości dodatnie parzyste.
4. Wczytać z plików liczby do tablic a, b [w][k] (w, k -stałe): do tablicy a z pliku a.txt, do tablicy b z pliku b.txt. Jeżeli brak danych – wpisać zero. Wydrukować tablice wierszami. Wyzerować w tablicy a wartości większe od 3, w b większe od 7 i
ponownie wydrukować tablice..
Funkcje i pliki
1. Wczytać z klawiatury do pliku a.txt 12 wierszy, a do pliku b.txt 15 wierszy. Wydrukować różnicę pomiędzy ilością wierszy
zawierających więcej niż 5 znaków * w pliku a.txt, a ilością wierszy zawierających więcej niż 7 znaków % w pliku b.txt.
2. Dane są pliki a.txt i b.txt. Wydrukować, ile plik a.txt ma wierszy nie zawierających liter z przedziału < a, k> i kończących się kropką oraz ile plik b.txt ma wierszy nie zawierających cyfr i kończących się małą literą.
3. Dany jest plik dane.pkt, zawierający w każdym wierszu dwie liczby będące współrzędnymi (x,y) punktu. Przepisać z niego
do pliku d5.pkt punkty leżące w odległości od P(-5,-5) większej od 10, a do pliku o wczytanej nazwie punkty leżące w odległości od P(-7,9) większej od 15. Wydrukować pliki wynikowe.
4. Do pliku o wczytanej nazwie wczytywać z klawiatury wiersze, dopóki kończą się małą literą. Z tego pliku przepisać do pliku
a.txt wiersze zaczynające się literami: a lub x, a następnie do pliku b.txt zaczynające się literami: k lub z. Wydrukować pliki wynikowe.
5. Utworzyć pliki: a.txt i plik o wczytanej z klawiatury nazwie, wczytując kolejno do każdego z nich z klawiatury wiersze tak
długo, dopóki zaczynają się literą. Wydrukować sumę ilości wierszy obu plików zawierających więcej niż 5 znaków oraz
sumę ilości wierszy obu plików zawierającymi więcej niż 7 znaków.
AM