Wczytywać liczby całkowite, aż do wczytania 10-ciu jednocyfrowych liczb. Wydrukować, ile razy obok
siebie wystąpiły dwie jednakowe liczby oraz informację czy więcej wczytano liczb dodatnich, czy
ujemnych.
2.
Wczytać dane postaci (liczba, znak) do tablic A, B[1..w,1..k] (w, k-stałe). Wydrukować, ile wewnętrznych
elementów w tablicy A zawierających literę ‘a’ lub ‘b’ w polu znakowym ma sumę pól liczbowych
czterech najbliższych sąsiadów >10 i ile wewnętrznych elementów w tablicy B zawierających kropkę lub
wykrzyknik w polu znakowym ma sumę pól liczbowych czterech najbliższych sąsiadów >23 (elementy
wewnętrzne to te, które nie leżą na obwodzie tablicy).
3.
Z pliku 'pa.pas' wczytać dane do tablicy A[1..n] (n- stała), z pliku 'pb.pas' wczytać dane do tablicy B[1..n],
zaś z pliku 'pc.pas' wczytać dane do tablicy C[1..n]. Wydrukować wszystkie możliwe iloczyny skalarne
tablic.
4.
Dla elementów listy określonej przez typ: Type adr=^towar; towar=record nazwa:string; cena:real;
nast:adr end napisać procedurę, która usuwa przedostatni element, gdy ma on pola nazwa i cena takie same
jak pierwszy element listy.
1.
Wczytać ciąg znaków zakończony kropką. Wydrukować, ile razy wystąpiło słowo ‘end’ w tym ciągu (czyli
sekwencja znaków ‘e’, ‘n’, ‘d’).
2.
Wprowadzić do tablic X,Y[1..n,1..n] of real (n – stała) liczby z przedziału (-10,10); pozostałe wprowadzane
liczby pomijać. W każdej tablicy wyzerować otoczenie największego elementu głównej przekątnej.
Wydrukować tablice kolumnami poczynając od pierwszej kolumny.
3.
Do pliku ‘dane.txt’ wczytywać z klawiatury wiersze, dopóki rozpoczynają się dużą literą. Następnie z tego
pliku przepisać do pliku ‘a.txt’ wiersze kończące się znakami ‘a’ lub ‘x’, a do pliku ‘b.txt’ kończące się
znakami ‘i’ lub ‘z’. Wyświetlić zawartość wszystkich plików.
4.
Dla listy zdefiniowanej typami: type Tadr=^towar; towar=record nazwa:string; cena:real; nast:Tadr end;
napisać funkcję, która wyznacza, ile jest towarów o cenie większej niż łączna cena dwu ostatnich towarów
na tej liście; dwu ostatnich towarów nie należy w to wliczać.
1.
Wczytywać liczby całkowite, aż do dwukrotnego wystąpienia zera. Wydrukować, ile między zerami
wystąpiło liczb parzystych oraz średnią arytmetyczną wczytanych liczb dodatnich.
2.
Wczytać punkty - rekordy postaci (x, y) do tablic A,B[1..n,1..n] (n-stała). W każdej tablicy przesunąć
cyklicznie w prawo elementy kolejnych wierszy leżących nad główną przekątną.
3.
Z pliku ‘w1.txt’ wpisać do tablicy A[1..n] (n-stała) wszystkie przecinki i małe litery od początku tablicy,
zaś pozostałe znaki – idąc od końca tablicy, zaś z pliku ‘w2.txt’ wpisać do tablicy B[1..n] (n-stała)
wszystkie kropki i duże litery od początku tablicy, zaś pozostałe znaki – idąc od końca tablicy.
Wydrukować obie tablice.
4.
Dla elementów listy określonej przez typ: Type adr=^towar; towar=record nazwa:string; cena:real;
nast:adr end napisać funkcję wyznaczającą ile jest towarów o cenie zawartej w przedziale określonym przez
cenę przedostatniego i ostatniego towaru umieszczonego na liście.
1.
Wczytywać napisy aż do wczytania dwóch kolejnych napisów zaczynających się kropką. Wydrukować
informację, ile napisów zaczyna się małą literą, ile dużą literą, ile cyfrą, a ile spacją.
2.
Wczytać liczby do tablic X,Y[1..w,1..k] of real (w,k-stałe). W tablicy X wpisać największą jej wartość do
elementów pierwszego wiersza, a w tablicy Y jej największą wartość do elementów pierwszego i ostatniego
wiersza. Wydrukować tablice.
3.
Z pliku tekstowego o wczytanej nazwie przepisać do pliku ‘wyn1.pas’ wiersz trzeci i siódmy, a do pliku
‘wyn2.pas’ wiersz czwarty i dziesiąty (jeśli wierszy jest mniej, to przepisać tyle , ile jest to możliwe).
Wydrukować informację, który z utworzonych plików ma więcej małych liter, a który więcej cyfr.
4.
Dla listy zdefiniowanej typami: type Tad=^Tbook; Tbook=record autor, tytul: string; rok: integer;
next:Tad; end; napisać procedurę, która usuwa z listy pierwszą na tej liście książkę, pod warunkiem, że nie
jest to książka najstarsza.
E1. Wczytywać ciąg liczb, aż do trzykrotnego wczytania wartości większej od pierwszej wczytanej liczby.
Wydrukować średnią arytmetyczną liczb ujemnych oraz ile razy liczba dodatnia poprzedziła zero.
E2. Do tablic A,B[1..w,1..k] (w, k-stałe) wczytać rekordy postaci (nazwa, cena). Wydrukować łączną cenę
towarów w tych kolumnach tablicy A, w których pierwsza i ostatnia nazwa mają co najmniej 5 znaków oraz
łączną cenę towarów w tych kolumnach tablicy B, w których pierwsza i ostatnia nazwa mają co najmniej 12
znaków.
E3. Z pliku 'a.pas' przepisać do pliku 'b.pas' 3 pierwsze i 2 ostatnie wiersze oraz wszystkie pozostałe nie
kończące się kropką, a następnie z pliku 'b.pas' przepisać do pliku o nazwie wczytanej 3 pierwsze i 2
ostatnie wiersze oraz wszystkie pozostałe nie kończące się średnikiem. Przyjąć dla uproszczenia, że w pliku
‘a.pas’ jest co najmniej 5 wierszy.
E4. Dla elementów listy określonej przez typ: Type adr=^towar; towar=record nazwa:string; cena:real;
nast:adr end napisać procedurę, która dopisuje na końcu listy dwa elementy wpisując do pól nazwa i cena
informacje o najtańszym i najdroższym towarze.
1.
Wczytywać znaki aż do momentu, gdy dwa kolejne znaki będą równe dwom pierwszym. Wydrukować
ilość wczytanych nawiasów (dowolnych), wliczając w to wszystkie wczytane znaki.
2.
Wprowadzić liczby do tablic X,Y,Z [1..w,1..k] of real (w,k-stałe). Wydrukować, która tablica ma więcej
kolumn o sumie elementów większej od sumy elementów pierwszego wiersza.
3.
Dany jest plik tekstowy ‘dane.txt’. Utworzyć pliki: ‘a.txt’ i ‘b.txt’ przepisując z pliku danego do pierwszego
z nich co najwyżej 10 wierszy mających co najmniej 5 liter, a do drugiego co najwyżej 20 wierszy mających
co najmniej 7 liter. Wyświetlić zawartość utworzonych plików.
4.
Dla listy określonej przez typy: type Tadr=^element; element=record nazwa:string; liczba:real; nast:Tadr
end; napisać procedurę, która zamienia miejscami zawartość pierwszego i ostatniego elementu na tej liście.
1.
Wczytywać liczby całkowite, aż do wystąpienia kolejno dwóch zer. Wydrukować informację, czy więcej
wczytano liczb podzielnych przez 3, czy przez 5 oraz ostatnią wczytaną liczbę dodatnią.
2.
Wczytać rekordy postaci (liczba, znak) do tablic A,B[1..w,1..k] (w, k-stałe). W tablicy A przesunąć
cyklicznie o 1 miejsce w dół kolumny zaczynające się spacją i liczbą większą od 10, zaś w tablicy B
przesunąć cyklicznie o 1 miejsce w dół kolumny zaczynające się kropką i liczbą większą od 15.
3.
Z pliku ‘dany.pas’ przepisać do pliku 'wyn1.pas' co najwyżej 10 liczb z przedziału <a,b>, do pliku
'wyn2.pas' co najwyżej 20 liczb z przedziału <c,d>, zaś do pliku o wczytanej nazwie co najwyżej 13 liczb
dodatnich dwucyfrowych. Wartości a,b,c,d należy wczytać, wymuszając, by podano a<=b i c<=d.
4.
Dla elementów listy określonej przez typ: Type adr=^towar; towar=record nazwa:string; cena:real;
nast:adr end napisać funkcję wyznaczającą, ile jest towarów droższych od ostatniego towaru i zarazem
droższych od swojego poprzednika.
1.
Wczytać ciąg liczb całkowitych zakończony dwoma następującymi po sobie zerami. Dla każdej wczytanej
liczby drukować informację, jaką liczbę wczytano: jednocyfrową, dwucyfrową, trzycyfrową czy jakąś inną.
2.
Wprowadzić liczby do tablic X,Y[1..n,1..n] of real (n – stała). Wydrukować średnie arytmetyczne obu
tablic. W tablicy X wyzerować elementy nad główną przekątną większe od średniej arytmetycznej
elementów tablicy Y, a w tablicy Y większe od średniej arytmetycznej elementów tablicy X. Wydrukować
tablice.
3.
Z pliku tekstowego o wczytanej nazwie przepisać do pliku ‘wyn1.pas’ wiersze od trzeciego do setnego, a do
pliku ‘wyn2.pas’ wiersze od dziesiątego do osiemdziesiątego (jeśli wierszy jest mniej, to przepisać tyle, ile
jest to mozliwe). Wydrukować informację, który z utworzonych plików ma więcej liter ‘A’, a który liter ‘Z’.
4.
Dla elementów listy zdefiniowanej typami: type Twsk=^cos; cos=record liczba: integer; nast:Twsk end;
napisać procedurę, która dopisuje na początku i końcu listy element zawierający liczbę będącą sumą
dodatnich pól liczbowych elementów listy.