9 кл проф.(программирование)

Тема 1Повторение. Команда ветвления. Циклы.





Тема 2 Одномерные массивы  презентация
Тема 3 Нахождение минимального и максимального элементов одномерного массива  презентация

Практическая работа "Нахождение минимального и максимального
 элементов одномерного массива"
1.  Дан массив А(n). Найти среднее арифметическое положительных элементов массива и кратных 7. Составить блок – схему.
2.  Дан массив А(n). Найти  min(A[5],A[14], …  ,a[n]). Составить программу. 
3.  Дан массив А(n). Найти максимальный элемент массива среди элементов кратных 13 и больших 100. Составить блок – схему и программу.
4.  Дан массив А(n). Найти  min(A[5],A[14], …  ,a[n]) и номер минимального элемента. Составить программу. 
5.  Дан массив А(n). Найти номер максимального элемента массива среди элементов кратных 13 и больших 100. Составить блок – схему и программу.

Тема 4 Сортировка. Упорядочивание линейной таблицы



Обычно сортировку подразделяют на два класса: внутреннюю и внешнюю. При внутренней сортировке все элементы хранятся в оперативной памяти, таким образом, как правило, это сортировка массивов. При внешней сортировке — элементы хранятся на внешнем запоминающем устройстве, это сортировка файлов.
Одно из Основных требований к методам сортировки — экономное использование памяти. Это означает, что переупорядочение нужно выполнять «на том же месте», то есть методы пересылки элементов из одного массива в другой не представляют интереса.
Удобной мерой эффективности является подсчет числа С — сравнений элементов и М — присваиваний элементов. Достаточно хороший алгоритм затрачивает на сортировку N элементов время порядка N×log2(N). Простейшие алгоритмы сортировки, которые мы рассмотрим в этом разделе, обладают характеристикой порядка N2. Если N достаточно мало, то простые алгоритмы выгодно использовать в силу простоты их реализации.


Тема 5  Удаление одного элемента в массиве


Алгоритм удаление элементов с номером k:
1.Сдвинуть все элементы начиная с k-го на один элемент влево
for i:=k to n-1 do

a[i]:=a[i+1];
2. Последнему элементу присвоить значение нуль.   a[n]:=0
Решение задач
1. Дан массив целых чисел A[1..N]. Удалить элементы с номером k.
var A:array[1..100] of integer;
n,i,j,k:byte; x:integer;
begin
read(n);
for i:=1 to n do begin
write('A[',i,']=');read(a[i]);end;
write('k=');read(k);
for i:=k to n-1 do
a[i]:=a[i+1];
a[n]:=0;
 for i:=1 to n do write(a[i],' ');
end.
2.  Дан массив целых чисел A[1..N].  Удалить элемент 7, при условии, что 7 встречается в массиве один раз.
3.  Дан массив целых чисел A[1..N].  Удалить из массива максимальный элемент, если все элементы разные.
Домашнее задание:
1. Дан массив целых чисел A[1..N]. Удалить элементы с номером 3.
2.  Дан массив целых чисел A[1..N].  Удалить элемент 14, при условии, что 14 встречается в массиве один раз.
3.  Дан массив целых чисел A[1..N].  Удалить из массива минимальный элемент, если все элементы разные.

Тема 6  Удаление нескольких элементов в массиве

1.  Дан массив целых чисел A[1..N].  Удалить все элементы  меньшие 15.
uses crt;
var      a: array[1..100] of integer;
    i, j, n, k: integer;
begin
read(n);
for i:=1 to n do begin
write('A[',i,']=');
read(a[i]); end;
        i := 1;
        k:=0;
    while i <= n-k do
        if a[i] < 15 then begin
            for j := i+1 to n-k do
                a[j-1] := a[j];
                a[n-k]:=0; inc(k);end
        else
            i := i + 1;
    if k=0 then writeln('no') else
begin
writeln ('      ');
    for i:= 1 to n-k do
        write(a[i]:4); end;

end.

Практическая работа :
"Удаление элементов  (одного,  нескольких) из одномерного массива"



Тема 7  Вставка одного  элемента в массив

Алгоритм вставки элемента х после элемента с заданным номером к:

1.Первые к элементов массива остаются без  изменений.
2.Все элементы, начиная с (к+1) –го необходимо сдвинуть вправо.

3.На место к+1 –го элемента записываем значение х. Т.е. после к-го элемента массива.
Вставка элемента
ПОСЛЕ элемента с данным номером к:
uses crt;
var
a: array[1..100] of integer; i, j, n,x,k: integer;
begin
read(n); for i:=1 to n do begin
write('A[',i,']=');
read(a[i]); end;
read(x); read(k);
for i:=n downto k+1 do  a[i+1] := a[i];
a[k+1]:=x;
writeln ('      ');
for i:= 1 to n+1 do write(a[i],' ');
end.
Вставка элемента
ПЕРЕД элементом с данным номером к:
uses crt;
var
a: array[1..100] of integer; i, j, n,x,k: integer;
begin
read(n); for i:=1 to n do begin
write('A[',i,']=');
read(a[i]); end;
read(x); read(k);
for i:=n downto k do  a[i+1] := a[i];
a[k]:=x;
writeln ('      ');
for i:= 1 to n+1 do write(a[i],' ');
end.


Задача 1. Вставить после последнего четного элемента число 455.
...
if a[i] mod 2=0 then k:=i; end;
 for i:=n downto k+1 do  a[i+1] := a[i];
a[k+1]:=4555;

Задача 2 Вставить перед последним элементом, меньшим 40 число 11.


...
Домашнее задание:
1. Вставить после последнего элемента кратного 7 число 10.

2. Вставить после и перед элементом под номером к число 999.

Тема 8  Вставка нескольких элементов в массив

1.     Вставить ПЕРЕД всеми отрицательными элементами число 333.

i := 1;
k:=0;
while i <= n+k do
if a[i]<0 then begin
for j := n+k  downto  i do
a[j+1] := a[j];
a[i]:=333;
inc(k);
i:=i+2; end    else
i := i + 1;
2.  Вставить ПОСЛЕ  всех элементов больших 30 и кратных 5 число 22.

Практическая работа
1. Дан массив чисел из n элементов. Найти  min(A[3],A[8],…A[n]). Составить программу.
2. Дан массив А(n). Отсортировать массив по возрастанию используя метод выбора (метод обмена). Составить программу
3. Дан массив А(n). Удалить все элементы, которые равны 15. Составить программу.
4. Дан одномерный массив А. Вставить перед элементами, большими 17 минимальный элемент.


Литерные величины в языке программирования Pascal
презентация


Строка -  это массив символов,  т.е.  элементов типа char.  В Паскале строке соответствует тип данных String
var Имя : string [Длина];


Литерные величины в языке программирования Pascal.  Решениезадач.




Комментариев нет:

Отправить комментарий