1.

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.