Блок-схема к решению данной задачи

 
 

 


Составление нециклических программ с разветвлениями

 

Составить программу проверки знания таблицы умножения.

 

program pt1;

usescrt; //подключаем модуль работы с экраном

varx,y,z:integer;// объявляем типы данных в разделе описаний целого типа

 

begin //начало программы

clrscr; //очищаем экран

writeln ('ПРОГРАММА ПРОВЕРКИ ТАБЛИЦЫ УМНОЖЕНИЯ.'); // выводим //сообщение на экран

 

randomize; //формируем случайные числа

x:= random(10); //Получаем случайным образом число х

y:= random(10);// Получаем случайным образом число у

 

write(' ',x,' x ',y,' = ?'); //Выводим полученные числа на экран

read(z); //Считываем с клавиатуры введенное число z

 

if z=x*y // Проверяем является ли введенное число произведением чисел х, у

then writeln ('правильно!') //Если является то выводим соответствующее сообщение

else writeln ('неправильно! '); //Сообщение в противном случае

 

end.

Результаты выполнения тестов по данной программе

 

№ теста Вход Ожидаемый выход Фактический выход Результат
1 2 2 Правильно Правильно Да
4 7 29 Неправильно Неправильно Да

 

Вывод: По результатам выполнения тестов, можем сделать вывод, что программа решена верно.

 

Блок-схема к решению данной задачи

 
 

 

 


True False

Составление циклических программ

 

Проверить, является ли целое число простым. Число является простым, если оно делится только на 1 и на само себя. При решении данной задачи используем неполную запись оператора цикла If.

 

Uses crt;

Var n,i:integer;

Begin

writeln('Введите число ');

Readln(n); //Вводим число и считываем его с клавиатуры

 

For i:=2 to n-1 do //Берем последовательночислаот 2 до введенного числа n

If n mod i =0 {Проверяем является ли это число простым - есть ли остаток от деления этого числа, на последовательность чисел от 2 до самого себя. Если число делится на какое либо другое число, то остаток от деления будет равно 0}

Then

begin //так как в операторе If будет несколько действий, оформляем

//Then в логические скобки begin end;

writeln(n,’не простое’); // число не является простым, оно делится нацело // выводим сообщение

readkey;

halt;//выходим из цикла

End;

writeln (n, ‘простое’);

End.

 

Результаты выполнения тестов по данной программе

 

№ теста Вход Ожидаемый выход Фактический выход Результат
12 не простое 12 не простое Да
23 простое 23 простое Да

 

Вывод: По результатам выполнения тестов, можем сделать вывод, что программа решена верно.

 

 


 

 

Составление программ обработки одномерных массивов

Из массива a составить массив b, который содержит только чётные элементы массива a.

program massiv1;

uses crt;

type mas=array[1..5] of integer; //объявляем тип данных «массив»

var a,b:mas; i,k,nmin:integer; min:integer;

 

Begin

clrscr;

for i:=1 to 5 do {Блок заполнения массива}

Begin

writeln ('Введите значение элемента');

readln (a[i]);

End;

 

//Из массива a составляем массив b, который содержит только чётные элементы //массива a

k:=0;

fori:=1 to 5 do

if a[i] mod 2=0{Поиск чётного элемента}

Then

begin {Формирование нового массива}

k:=k+1; b[k]:=a[i];

end;

if k=0 then begin writeln ('Чётных элементов нет.');

writeln ('Формирование нового массива невозможно!');

End

Else begin

nmin:=1; min:=b[1]; {Поиск минимального в новом массиве}

for k:=1 to k do

if b[k]<min

then begin min:=b[k]; nmin:=k; end;

 

 

//Выводим новый сформированный массив

for i:=1 to 5 do {Вывод элементов массива а}

writeln ('Элемент ',i, ' массива a ',a[i]);

 

 

for i:=1 to k do {Вывод элементов массива b}

writeln ('Элемент ',i, ' массива b ',b[i]);

 

 

writeln ('Минимальный элемент среди чётных элементов массива=',min);

writeln ('Номер этого элемента=',nmin);

 

end.

 


Литература, рекомендуемая для подготовки

Контрольной работы

 

1. Культин Н.Б. Turbo Pascal в задачах и примерах. БВХ-Петербург, 2004
2. Немнюгин С.А. Turbo Pascal. Программирование на языке высокого уровня. Питер.2003г
3. Офицеров Д.В. и др. Программирование на персональных ЭВМ. Минск. 1993г
4. Павловская Т.А. Паскаль. Программирование на языке высокого уровня. Питер. 2003г
5. Информатика. Учебное пособие для 11 класса общеобразовательных учреждений с белорусским и русским языками обучения с 12-летним сроком обучения (базовый и повышенный уровень). – Мн. «Народная асвета», 2008г.
6. http://www.cyberforum.ru/

МЕТОДИЧЕСКИЕ УКАЗАНИЯ
и задания для выполнения домашней контрольной работы №2