Збірка задач "Оформлення задач на мові Паскаль"

Про матеріал
В даній збірці кожна задача оформлена в чотири етапи: І етап - Дослідження ІІ етап - Блок - схема ІІІ етап - Програма ІV етап - Протокол виконання програми Наведено приклади написання лінійних, розгалужених та циклічних програм, а також програми з масивами, літерними величинами. Задачі в яких використані процедури та функції. Можливо комусь допоможе моя методика оформлення задач. Цей матеріал можна використовувати у 8 та 9 класах при вивченні теми "Алгоритми та програми".
Перегляд файлу

З М І С Т

1. ЛІНІЙНІ ПРОГРАМИ

Задача1. Знайти площу трикутника за його трьома сторонами.

 

2. РОЗГАЛУЖЕНІ ПРОГРАМИ


Задача1. Знайти значення функції:


Задача2. Знайти значення виразу:

                                                   3. Цикл ПОКИ

Задача1. Знайти суму чисел  42+62+82+...+N2.

 

4. Цикл ДО

Задача1. Знайти суму чисел  42+62+82+...+N2.

 

5. Цикл ДЛЯ

Задача1. Знайти суму чисел 10+11+12+...+N.

Задача2. Знайти суму чисел 10+9+8+...+1.

 

6. ОДНОВИМІРНИЙ МАСИВ

Задача1. Збільшити всі елементи одновимірного масиву X(N) в два рази.

Задача2. Замінити всі додатні елементи  одновимірного масиву X(N) їх порядковими номерами.

Задача3. Знайти середнє арифметичне від’ємних елементів одновимірного масиву X(N).

 

7. ДВОВИМІРНИЙ МАСИВ

Задача1. Замінити всі елементи двовимірного масиву числом 7.

Задача2. Збільшити  елементи із проміжку [2;10] сумою квадрата самого елемента і числа 3.

Задача3. Знайти суму всіх елементів кожного рядка  двовимірного масиву.

 

8. КВАДРАТНА МАТРИЦЯ

Задача1. Знайти добуток сум головної та бічної діагоналі.

Задача2. Знайти кількість додатних елементів, які знаходяться над головною діагоналлю.

 

9. ЛІТЕРНІ ВЕЛИЧИНИ

Задача1. Підрахувати  кількість літер “о” у заданому слові.

 

10. ПІДПРОГРАМИ - ФУНКЦІЇ

Задача1. Задано координати (x1,y1), (x2,y2), (x3,y3) вершин трикутника у площині. Обчислити периметр трикутника.

 

11. ПІДПРОГРАМИ - ПРОЦЕДУРИ

Задача1. Дано сторони a, b  прямокутника. Обчислити периметр і площу прямокутника, використавши для цього процедуру.

1. ЛІНІЙНІ ПРОГРАМИ

 

ЗАДАЧА1.  Знайти  площу трикутника за трьома сторонами.

 

І. ДОСЛІДЖЕННЯ

Дано: перша сторона – a; дійсний

           друга сторона – в; дійсний

           третя сторона – с; дійсний

Знайти: площу трикутника – S; дійсний

                                           Розв’язання

Р=(а+в+с)/2

S=√р(р-а)(р-в)(р-с)

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 S

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

 

PROGRAM z1;

VAR a,в,c,p,S:real;

BEGIN

            write(‘a=’);

            readLN(a);

            write(‘в=’);

            readLN(в);

            write(‘c=’);

            readLN(c);

            p:=(a+в+c)/2;

            S:=sqrt(p*(p-a)*(p-в)*(p-c));

            writeLN(‘S=’,S:4:2);

END.

 

 

IV. ПРОТОКОЛ ВИКОНАННЯ ПРОГРАМИ

 

a=3

в=5

с=4

S=6.00

 

 

 

Це звичайна лінійна програма, в якій використовується структура слідування. В цій задачі аргументами являються довжини сторін трикутника (A,B,C), а результатом – площа трикутника (S). Периметр трикутника (Р) – допоміжна величина (значення якої на екран не виводиться).

 

 

 

 

 

 

 

 

2. РОЗГАЛУЖЕНІ ПРОГРАМИ

 


ЗАДАЧА1. Знайдіть значення функції:

 

 

І. ДОСЛІДЖЕННЯ

 

Дано: любе число – х; дійсний

Знайти: значення функції – y; дійсний

Розв’язання

1) якщо х1, то y=x2

2) якщо х<1, то y=1-x

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

 

PROGRAM z1;

VAR x,y:real;

BEGIN

            write(‘x=’);

            readLN(x);

            IF x>=1 THEN  y:=sqr(x) ELSE y:=1-x; 

            writeLN(‘y=‘,y:4:2) 

END.

 

 

IV. ПРОТОКОЛ ВИКОНАННЯ ПРОГРАМИ

(гілка+)

x=3

y=9.00

 

(гілка-)

x=-2

y=3.00

 

 

 

Таке оформлення має задача, яка складається із двох умов і проти кожної умови записана одна дія. В таких задачах використовують повну форму розгалуження. Перевіряється тільки перша умова і якщо вона виконується, то в операторі IF (умова 1)  біля службового слова THEN  записується дія 1,а біля службового слова ELSE записується дія 2. Дана розгалужена програма має дві гілки. Для перевірки програми запускають її на виконання два рази, щоб перевірити правильність розрахунків по гілці + та  -.

 

 

 

 

 

 

 

2. РОЗГАЛУЖЕНІ ПРОГРАМИ

 


ЗАДАЧА2. Знайти значення виразу:

І. ДОСЛІДЖЕННЯ

 

Дано: любе число – х; дійсний

Знайти: значення виразу – y; дійсний

Розв’язання

  1. якщо х0, то а)y=

 

                                б) вивести y 

 

     2) якщо х=0,  то  вивести ‘не має змісту’

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

 

PROGRAM z2;

VAR x,y:real;

BEGIN

            write(‘x=’);

            readLN(x);

            IF x<>0 THEN  begin

                                           y:=(2*x+1)/x;

                                           writeln(‘y=’,y:4:2);end

                            ELSE  writeln(‘HE MAE ZMICTY’); 

END.

 

 

IV. ПРОТОКОЛ ВИКОНАННЯ ПРОГРАМИ

(гілка+)

x=1

y=3.00

 

(гілка-)

x=0

HE MAE ZMICTY

 

 

 

 

Таке оформлення має задача, яка складається із двох умов: де проти першої умови записано дві дії, а проти другої умови тільки одна дія. В таких задачах використовують повну форму розгалуження. Перевіряється тільки перша умова і якщо вона виконується, то в операторі IF (умова 1)  біля службового слова THEN  записується дії обмежені словами BEGIN …END, а біля службового слова ELSE записується одна дія. Дана розгалужена програма має дві гілки. Для перевірки програми запускають її на виконання два рази, щоб перевірити правильність розрахунків по гілці + та  -.

 

 

 

 

3. ЦИКЛІЧНІ ПРОГРАМИ (цикл WHILE…END)

 

ЗАДАЧА1. Знайти суму чисел   42+62+82+…+N2.

 

І. ДОСЛІДЖЕННЯ

 

Дано: натуральне  число – N; цілий

Знайти: суму чисел – S; дійсний

 

Розв’язання

S0=0

 

S1=S0 +

 

S2=S1 +                          і = 4,N  з  кроком  2 

SN=SN-1 +

 

 

S = S + i2

i = i + 2              

 

S = 0

i = 4 

 

iN - умова циклу 

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

 

 

PROGRAM z1;

VAR N,i:integer;

           S:real;

BEGIN

              write(‘N=’);

              readln(N);

              S:=0;

              i:=4;

              WHILE  і<=N DO begin 

                                               S:=S+і*і;

                                                i:=i+2;

                                                end;                                                                      

              WRITELN(‘S=‘,S:4:0);

END.   

 

IV. ПРОТОКОЛ ВИКОНАННЯ ПРОГРАМИ

 

 

N=8

S=  116

 

 

 

 

 

Таке оформлення має задача, яка записується за допомогою циклу поки, або як його називають цикл з передумовою. Цикл поки складається із трьох компонентів: тіла циклу, підготовки до циклу та умови. Послідовність цих компонентів слідуюча: підготовка до циклу , умова та тіло циклу. Перевіряється умова і якщо вона виконується, то виконуються команди тіла циклу, а якщо умова не виконується – то виходимо із циклу. Іншими словами: поки виконується умова - ідемо на тіло циклу. Для перевірки правильності виконання програми достатньо знайти суму трьох чисел.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4. ЦИКЛІЧНІ ПРОГРАМИ (цикл REPEAT…UNTIL)

 

ЗАДАЧА1. Знайти суму чисел   42+62+82+…+N2.

 

І. ДОСЛІДЖЕННЯ

 

Дано: натуральне  число – N; цілий

Знайти: суму чисел – S; дійсний

 

Розв’язання

S0=0

 

S1=S0 +

 

S2=S1 +                          і = 4,N  з  кроком  2 

SN=SN-1 +

 

 

S = S + i2

i = i + 2              

 

S = 0

i = 4 

 

i>N - умова циклу 

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 ІІІ. ПРОГРАМА

 

 

PROGRAM z1;

VAR N,i:integer;

           S:real;

BEGIN

              write(‘N=’);

              readln(N);

              S:=0;

              i:=4;

              REPEAT 

                            S:=S+і*і;

                            i:=i+2;

              UNTIL  і>N ;                                                                      

              WRITELN(‘S=‘,S:4:0);

END.   

 

 

 

 

 

IV. ПРОТОКОЛ ВИКОНАННЯ ПРОГРАМИ

 

 

N=8

S=  116

 

 

 

 

 

 

 

Таке оформлення має задача, яка записується за допомогою циклу  до, або як його називають цикл з післяумовою. Цикл до складається із трьох компонентів: тіла циклу, підготовки до циклу та умови. Послідовність цих компонентів слідуюча: підготовка до циклу , тіло циклу та умова. Спочатку виконується тіло циклу, а потім перевіряється умова і якщо вона не виконується, то повертаємось на виконання команд  тіла циклу, а якщо умова  виконується – то виходимо із циклу. Іншими словами: до виконується умови ідемо на тіло циклу. Для перевірки правильності виконання програми достатньо знайти суму трьох чисел.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5. ЦИКЛІЧНІ ПРОГРАМИ (цикл FOR…NEXT (крок 1))

 

ЗАДАЧА1. Знайти суму чисел   10+11+12+…+N.

 

І. ДОСЛІДЖЕННЯ

 

Дано: натуральне  число – N; цілий

Знайти: суму чисел – S; дійсний

 

Розв’язання

 

S0=0

 

S1=S0 +

 

S2=S1 +                          і = 10,N  з  кроком 1 

SN=SN-1 +

 

 

S = S + і     -  тіло циклу

 

 

S = 0     -  підготовка до циклу

 

 

і = 10,N

   [1]  

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

 

 

PROGRAM z1;

VAR N,i:integer;

           S:real;

BEGIN

              write(‘N=’);

              readln(N);

              S:=0;

              For  і:=10  to N do S:=S+і;

              WRITELN(‘S=‘,S:4:0);

END.   

IV. ПРОТОКОЛ ВИКОНАННЯ ПРОГРАМИ

N=12

S=  33

 

Таке оформлення має задача, яка записується за допомогою циклу для, або як його називають цикл із параметром. Цикл для складається із трьох компонентів: тіла циклу, підготовки до циклу та зміни параметра. Послідовність цих компонентів слідуюча: підготовка до циклу , зміна параметра та тіло циклу. Після виконання тіла циклу параметр (і) збільшується автоматично на 1, вихід із циклу відбувається при і= N+1.

 

5. ЦИКЛІЧНІ ПРОГРАМИ (цикл FOR…NEXT (крок -1))

 

ЗАДАЧА2. Знайти суму чисел   10+9+8+…+1.

 

І. ДОСЛІДЖЕННЯ

 

Дано: ------

Знайти: суму чисел – S; дійсний

 

Розв’язання

 

S0=0

 

S1=S0 +

 

S2=S1 +                          і = 10,1  з  кроком  -1 

SN=SN-1 +

 

 

S = S + і     -  тіло циклу

 

 

S = 0     -  підготовка до циклу

 

 

і = 10,1

   [-1]  

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

 

PROGRAM z2;

VAR i:integer;

           S:real;

BEGIN

              S:=0;

              For  і:=10  downto 1 do S:=S+і;

              WRITELN(‘S=‘,S:4:0);

END.   

IV. ПРОТОКОЛ ВИКОНАННЯ ПРОГРАМИ

S=  55

 

Таке оформлення має задача, яка записується за допомогою циклу для, або як його називають цикл із параметром. Цикл для складається із трьох компонентів: тіла циклу, підготовки до циклу та зміни параметра. Послідовність цих компонентів слідуюча: підготовка до циклу , зміна параметра та тіло циклу. Після виконання тіла циклу параметр (і) збільшується автоматично на -1, вихід із циклу відбувається при і= 0.

 

 

 

 

 

6. ОДНОВИМІРНИЙ МАСИВ

 

Задача 1. Збільшити всі елементи одновимірного  масиву Х(N) в два рази.

 

І. ДОСЛІДЖЕННЯ

Дано: розмірність масиву – N; цілий

           масив – X; дійсний

Знайти: масив – Х; дійсний

Розв’язання

1. Введення розмірності масиву.

2. Введення елементів масиву.

3. Заміна  елементів масиву.

4. Виведення елементів масиву.

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

 

РROGRAM z1;

CONST N=5;

VAR і:integer;

          X:array[1..N] of real;

BEGIN

            for і:=1 to N do begin

            write(‘X(‘,і,’)=’);

            readln(X[i])

            end;

            for i:=1 to N do Х[i]:=X[i]*2;

            for і:=1 to N do write(X[I]:4:2,’ ‘)

END.

 

 

 

IV. ПРОТОКОЛ  ВИКОНАННЯ ПРОГРАМИ

Х(1)= -2

Х(2)= 4

Х(3)= 6

Х(4)= -2.2

Х(5)= 1.5

-4.00  8.00  12.00  -4.40  3.00

 

Таке оформлення має задача, яка замінює всі елементи одновимірного масиву добутком самого елемента і числа 2. В цій задачі використовується структура циклу для. Задача має чотири пункти розв’язку, які перераховані в дослідженні і показані на блок-схемі.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Задача 2. Замінити всі додатні елементи одновимірного  масиву їх порядковими номерами.

 

І. ДОСЛІДЖЕННЯ

Дано: розмірність масиву – N; цілий

           масив – X; дійсний

Знайти: масив – X; дійсний

Розв’язання

1. Введення розмірності масиву.

2. Введення елементів масиву.

3. Заміна додатних  елементів масиву.

4. Виведення  елементів масиву.

 

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

РROGRAM z2;

CONST N=5;

VAR і:integer;

         X:array[1..N] of real;

BEGIN

            for і:=1 to N do begin

            write(‘X(‘,і,’)=’);

            readln(X[i])

            end;

            for i:=1 to N do begin

            if X[i]>0 then X[i]:=і

            end;

            for i:=1 to N do write(X[i]:4:2,’ ‘)

END.

IV. ПРОТОКОЛ  ВИКОНАННЯ ПРОГРАМИ

Х(1)= -1

Х(2)= 2

Х(3)= -3

Х(4)= 8

Х(5)= 6

-1.00  2.00  -3.00  4.00  5.00 

 

 

Таке оформлення має задача, яка замінює всі додатні елементи одновимірного масиву їх порядковими номерами. В цій задачі використовується структура циклу для. Задача має чотири пункти розв’язку, які перераховані в дослідженні і показані на блок-схемі. В третьому пункті розв’язку тілом циклу для, являється скорочена форма команди розгалуження, тому що замінюється елемент масиву лише тоді, коли він додатній.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Задача 3. Знайти середнє арифметичне від’ємних елементів одновимірного    масиву.

І. ДОСЛІДЖЕННЯ

Дано: розмірність масиву – N; цілий

           масив – X; дійсний

Знайти: середнє арифметичне від’ємних елементів – R; дійсний

Розв’язання

1. Введення розмірності масиву.

2. Введення елементів масиву.

3. Знаходження суми та кількості від’ємних елементів.

4. Знаходження середнього арифметичного від’ємних елементів.

5. Виведення середнього арифметичного від’ємних елементів.

 

ІІ. БЛОК – СХЕМА

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. ПРОГРАМА

РROGRAM z3;

CONST N=5;

VAR і,K:integer;

          S,R:real;

          X:array[1..N] of real;

BEGIN

            for і:=1 to N do begin

            write(‘X(‘,і,’)=’);

            readln(X[i])

            end;

            S:=0;

            K:=0;

            for i:=1 to N do begin

            if X[i]<0 then begin

                                   S:=S+X[i];

                                   K:=K+1

                                   end;

            end;

            R:=S/K;

            write(‘R=’,R:4:2)

END.

 

IV. ПРОТОКОЛ  ВИКОНАННЯ ПРОГРАМИ

Х(1)= -1

Х(2)= 2

Х(3)= -3

Х(4)= 8

Х(5)= 6

R=-2.00

 

Таке оформлення має задача на знаходження середнього арифметичного від’ємних елементів одновимірного масиву. В цій задачі використовується структура циклу для. Задача має п’ять пунктів розв’язку, які перераховані в дослідженні і показані на блок-схемі. В третьому пункті розв’язку тілом циклу для, являється скорочена форма команди розгалуження, яка по гілці плюс має дві дії, тому що потрібно одночасно знаходити суму від’ємних елементів та їх кількість.

 

 

 

7. ДВОВИМІРНИЙ МАСИВ

 

Задача 1. Замінити всі елементи двовимірного масиву числом 7.

 

 

І.  Дослідження

 

Дано: розмірність матриці – N,M; цілий

          матриця – Х; дійсний

 

Знайти: матрицю – Х; дійсний

 

                  Розв’язання

 

  1.       Введення розмірності матриці.
  2.       Введення елементів матриці.
  3.       Заміна елементів матриці числом 7.
  4.       Виведення елементів матриці.

 

                                         ІІ. БЛОК – СХЕМА            

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

III.   Програма

 

PROGRAM z1;

CONST N=3;

              M=2;

VAR i,j:integer;

         X:array[1..N,1..M] of real;

BEGIN

            FOR i:=1 TO N DO begin

            FOR j:=1 TO M DO begin

                    WRITE(‘X(‘,i,’,’,j,’)=’);

                    READLN(X[i,j]);

            end;

            end;

 

            FOR i:=1 TO N DO begin

            FOR j:=1 TO M DO X[i,j]:=7;

            end;

 

            FOR i:=1 TO N DO begin

            FOR j:=1 TO M DO  WRITE(X[i,j]:4:2,’ ‘);

            WRITELN(‘ ‘);

            end;

 

END.

 

IV.  Протокол виконання програми

 

Х(1,1) = -4

Х(1,2) = 2

Х(2,1) = 0

Х(2,2) = 5

Х(3,1) = 9

Х(3,2) = 0.5

7.00 7.00

7.00 7.00

7.00 7.00

 

Таке оформлення має задача, яка замінює всі елементи двовимірного масиву числом 7. В цій задачі використовується структура вкладені цикли. Задача має чотири пункти розв’язку, які перераховані в дослідженні і показані на блок-схемі.

 

 

Задача 2. Збільшити елементи із проміжку [2;10] сумою квадрата самого елемента і числа 3.

І.  Дослідження

Дано: розмірність матриці – N,M; цілий

          матриця – Х; дійсний

Знайти: матрицю – Х; дійсний

                  Розв’язання

1.  Введення розмірності матриці.

  1. Введення елементів матриці.
  2. Заміна елементів матриці із проміжку [2;10].
  3. Виведення елементів матриці.

ІІ.   Блок – схема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

III.   Програма

PROGRAM z2;

CONST N=3;

              M=2;

VAR i,j:integer;

         X:array[1..N,1..M] of real;

BEGIN

            FOR i:=1 TO N DO begin

            FOR j:=1 TO M DO begin

                    WRITE(‘X(‘,i,’,’,j,’)=’);

                    READLN(X[i,j]);

            end;

            end;

 

            FOR i:=1 TO N DO begin

            FOR j:=1 TO M DO begin

            IF ((X[i,j]>=2) and (X[i,j]<=10))  THEN X[i,j]:=sqr(X[i,j])+3;

            еnd;

            end;

 

            FOR i:=1 TO N DO begin

            FOR j:=1 TO M DO  WRITE(X[i,j]:4:2,’ ‘);

            WRITELN(‘ ‘);

            end;

 

END.

IV.  Протокол виконання програми

Х(1,1) = -4

Х(1,2) = 2

Х(2,1) = 0

Х(2,2) = 5

Х(3,1) = 9

Х(3,2) = 0.5

-4.00 7.00

0.00 28.00

84.00 0.50

 

 

Таке оформлення має задача, яка замінює всі елементи із даного проміжку двовимірного масиву сумою квадрата самого елемента і числа 3. В цій задачі використовується структура вкладені цикли. Задача має чотири пункти розв’язку, які перераховані в дослідженні і показані на блок-схемі. В третьому пункті тілом вкладеного циклу є скорочена форма розгалуження.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Задача 3. Знайти суму всіх елементів кожного рядка двовимірного масиву.

 

 

І.  Дослідження

 

Дано: розмірність матриці – N,M; цілий

          матриця – Х; дійсний

 

Знайти: суму всіх елементів кожного рядка – S; дійсний

 

                  Розв’язання

 

  1. Введення розмірності матриці.
  2. Введення елементів матриці.
  3. Знаходження та виведення суми всіх елементів кожного рядка матриці.

 

ІІ.   Блок – схема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

III.   Програма

 

PROGRAM z3;

CONST N=2;

              M=3;

VAR i,j:integer;

         X:array[1..N,1..M] of real;

         S:real;

 

 

 

 

BEGIN

            FOR i:=1 TO N DO begin

            FOR j:=1 TO M DO begin

                    WRITE(‘X(‘,i,’,’,j,’)=’);

                    READLN(X[i,j]);

            end;

            end;

 

 

            FOR i:=1 TO N DO begin

            S:=0;

            FOR j:=1 TO M DO S:=S+X[i,j];

            WRITELN(‘S’,i,’=’,S:4:2);

            end;

 

 

END.

 

 

 

IV.  Протокол виконання програми

 

Х(1,1) = -4

Х(1,2) = 2

Х(1,3) = 0

Х(2,1) = 5

Х(2,2) = 9

Х(2,3) = 0.5

S1=-2.00

S2=14.50

 

 

 

Таке оформлення має задача, яка знаходить суму елементів по рядках.. В цій задачі використовується структура вкладені цикли. Задача має три пункти розв’язку, які перераховані в дослідженні і показані на блок-схемі. В третьому пункті у вкладеному циклі знаходиться сума рядка і виводиться на екран потім робиться перехід на другий рядок і т. д..

 

 

 

 

 

 

8. КВАДРАТНА МАТРИЦЯ

 

Задача 1. Знайти добуток сум головної та бічної діагоналі.

 

І.  Дослідження

 

Дано: розмірність матриці – N; цілий

          матриця – Х; дійсний

Знайти: добуток сум головної та бічної діагоналі – S; дійсний

                  Розв’язання

  1. Введення розмірності матриці.
  2. Введення елементів матриці.
  3. Знаходження суми головної діагоналі.
  4. Знаходження суми бічної діагоналі.
  5. Знаходження добутку сум головної та бічної діагоналі.
  6. Виведення добутку на екран.

 

ІІ.   Блок – схема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

III.   Програма

 

PROGRAM z1;

CONST N=3;

VAR i,j:integer;

         X:array[1..N,1..N] of real;

         S,S1,S2:real;

 

BEGIN

            FOR i:=1 TO N DO begin

            FOR j:=1 TO N DO begin

                    WRITE(‘X(‘,i,’,’,j,’)=’);

                    READLN(X[i,j]);

            end;

            end;

 

            S1:=0;

            FOR i:=1 TO N DO S1:=S1+X[i,i];

 

            S2:=0;

            FOR i:=1 TO N DO begin

                                                       j:=N-i+1;

                                                      S1:=S1+X[i,j];

                                               end;

 

             S:=S1*S2;

 

            WRITELN(‘S=’,S:4:2);

 

END.

IV.  Протокол виконання програми

Х(1,1) =1

Х(1,2) = 0

Х(1,3) = 2

Х(2,1) = 0

Х(2,2) = 1

Х(2,3) = 0

Х(3,1) = 2

Х(3,2) = 0

Х(3,3) = 1

S=15.00

Таке оформлення має задача, яка знаходить добуток сум головної та бічної діагоналей. Задача має шість пунктів розв’язку, які перераховані в дослідженні і показані на блок-схемі.

 

Задача2. Знайти кількість додатних елементів, які знаходяться над головною

                діагоналлю.

 

І.  Дослідження

Дано: розмірність матриці – N; цілий

          матриця – Х; дійсний

Знайти: кількість додатних елементів – k; дійсний

                  Розв’язання

  1.     Введення розмірності матриці.
  2.     Введення елементів матриці.
  3.     Знаходження кількості додатних елементів, які знаходяться над головною діагоналлю.
  4.     Виведення кількості на екран.

ІІ.   Блок – схема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

III.   Програма

PROGRAM z2;

CONST N=3;

VAR i,j,k:integer;

         X:array[1..N,1..N] of real;

              

BEGIN

            FOR i:=1 TO N DO begin

            FOR j:=1 TO N DO begin

                    WRITE(‘X(‘,i,’,’,j,’)=’);

                    READLN(X[i,j]);

            end;

            end;

 

            k:=0;

            FOR i:=1 TO N DO begin

            FOR j:=i TO N DO begin

            IF X[i,j]>0 THEN  k:=k+1;

            end;

            end;

 

            WRITELN(‘k=’,k);

          

END.

 

IV.  Протокол виконання програми

 

Х(1,1) =1

Х(1,2) = -4

Х(1,3) =- 2

Х(2,1) = 0

Х(2,2) = 1

Х(2,3) = 7

Х(3,1) = 2

Х(3,2) = 0

Х(3,3) = 1

k=4

 

Квадратна матриця має однакову кількість рядків та стовпців. Таке оформлення має задача, яка знаходить кількість додатних елементів, які знаходяться над головною діагоналлю. В цій задачі використовується структура вкладені цикли. Задача має чотири пункти розв’язку, які перераховані в дослідженні і показані на блок-схемі. В третьому пункті тілом вкладеного циклу є скорочена форма розгалуження.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9. ЛІТЕРНІ  ВЕЛИЧИНИ

 

ЗАДАЧА1.  Підрахувати  кількість літер “о” у заданому слові.

 

І. Дослідження

Дано: слово – a; символьний

Знайти: кількість літер “о” – n; цілий

                                           Розв’язання

  1. Ввести слово.
  2. Знайти довжину слова.
  3. Знайти кількість літер “о”.
  4. Вивести кількість літер “о”.

 

ІІ. Блок - схема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. Програма

 

PROGRAM z1;

VAR a:string;

          i,n,k:integer;

BEGIN

            write(‘a=’);

            readLN(a);

            k:=length(a);

            n:=0;

            FOR  i:=1 TO k DO

                      IF a[i]=’o’ THEN  n:=n+1; 

            writeLN(‘n=‘,n) 

END.

 

 

IV. Протокол виконання програми

a=cool

n=2

 

 

Cьогодні комп’ютери застосовують для розв’язування не лише задач обчислювального характеру, а й задач опрацювання інформації, заданої у текстовому вигляді. Таке оформлення має задача, яка знаходить кількість літер “о” у слові, яке вводиться із клавіатури. Задача має чотири пункти розв’язку, які перераховані в дослідженні і показані на блок-схемі.

 

 

 

 

 

 

 

 

 

 

10. ПІДПРОГРАМИ - ФУНКЦІЇ

 

ЗАДАЧА1.  Задано координати (x1,y1), (x2,y2), (x3,y3) вершин трикутника у площині. Обчислити периметр трикутника.

 

І. Дослідження

Дано: координати першої точки – x1,y1; дійсний

           координати другої точки – x2,y2; дійсний

           координати третьої точки – x3,y3; дійсний

Знайти: периметр трикутника – Р; дійсний

                                           Розв’язання

  1. Введення координат першої точки.
  2. Введення координат другої точки
  3. Введення координат третьої точки.
  4. Знаходження першої сторони за допомогою функції TR.
  5. Знаходження другої сторони за допомогою функції TR.
  6. Знаходження третьої сторони за допомогою функції TR.
  7. Знаходження периметра трикутника.
  8. Виведення периметра трикутника на екран.

 

ІІ. Блок - схема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. Програма

 

PROGRAM z1;

VAR x1,y1,x2,y2,x3,y3,a,b,c,p:real;

 

Function TR(a1,b1,a2,b2:real):real;

Begin

           d:=sqrt(sqr(a2-a1)+sqr(b2-b1))

end;

 

BEGIN

            write(‘x1,y1=’);

            readLN(x1,y1);

            write(‘x2,y2=’);

            readLN(x2,y2);

            write(‘x3,y3=’);

            readLN(x3,y3);

            a:=TR(x1,y1,x2,y2);

            b:=TR(x1,y1,x3,y3);

            c:=TR(x2,y2,x3,y3);

            p:=(a+в+c);

            writeLN(‘P=’,P:4:2);

END.

 

 

 

IV. Протокол виконання програми

x1,y1=1 4

x2,y2=5 4

x3,y3=1 1

P=12.00

 

 

Підпрограми – функції використовують з метою спрощення головної програми, для звернення до групи команд, які часто використовуються в інших програмах чи іншими користувачами, якщо результатом є одне значення. Таким чином в даній задачі за допомогою функції TR ми знаходимо довжини трьох сторін a,b,c.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11. ПІДПРОГРАМИ - ПРОЦЕДУРИ

 

ЗАДАЧА1.  Дано сторони a, b  прямокутника. Обчислити периметр і площу прямокутника, використавши для цього процедуру.

 

І. Дослідження

 

Дано: сторони прямокутника – а,b; дійсний

Знайти: периметр прямокутника – Р; дійсний

                площу прямокутника – S; дійсний

 

                                           Розв’язання

 

  1. Введення сторін прямокутника.
  2. Обчислення периметра та площі прямокутника за допомогою процедури tt.
  3. Виведення периметра та площі прямокутника на екран.

 

 

 

 

ІІ. Блок - схема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ІІІ. Програма

 

PROGRAM z1;

VAR a,b,P,S:real;

 

Procedure tt;

Begin

           P:=2*(a+b);

           S:=a*b

end;

 

BEGIN

            write(‘a,b=’);

            readLN(a,b);

            tt;

            writeLN(‘P=’,P:4:2,’ S=’,S:4:2)

END.

 

 

IV. Протокол виконання програми

a,b=2  4

P=12.00 S=8.00

 

Підпрограми – процедури використовують з метою спрощення головної програми. Концепція структурного програмування полягає в тому, що будь-яку складну чи громіздку задачу потрібно звести до послідовності простіших підзадач, записати підпрограми для їхнього розв'язування і створити головну програму, яка має складатися з викликів цих підпрограм. В даній програмі a,b,P,S – глобальні змінні. Починає виконуватися розділ команд головної програми (а не процедура, хоча вона записана вище). Користувач вводить дані з клавіатури, натискає на клавішу вводу і лише тоді виконується команда tt – керування передається процедурі, де обчислюється периметр і площа. Коли процедура виконана, керування передається наступній команді головної програми, яка виводить результати на екран.

 

doc
Додав(-ла)
Балюк Тамара
До підручника
Інформатика 8 клас (Ривкінд Й.Я., Лисенко Т.І., Чернікова Л.А., Шакотько В.В.)
Додано
26 вересня 2022
Переглядів
2587
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку