Методические указания к выполнению лабораторной работы
Задание
Даны два целых числа A и B (A < B). Вывести в порядке возрастания все целые числа, расположенные между A и B (не включая числа A и B), а также количество N этих чисел.
Выполнение
Для выполнения этого задания необходимо использовать оператор цикла с параметрами. Оператор цикла с параметрами выполняет группу операторов заданное количество раз. В цикле с единичным шагом изменяется переменная, для которой параметрами цикла задаются начальное и конечное значения. При достижении переменной конечного значения цикл заканчивается и выполняется следующий оператор.
Этап 1. Формализация. Задача заключается в переборе целых чисел от А до В. Так как А и В не должны включаться в перебор, необходимо в качестве параметров задать значения А+1 и В-1.
Для подсчёта количества чисел можно ввести дополнительную переменную-счётчик N. Сначала её значение установить равным нулю, а затем в цикле при каждом повторе увеличивать на единицу.
Этап 2. Декомпозиция. Производим декомпозицию задачи — выделяем действия. Определяем, что для решения задачи необходимо выполнить следующие действия:
1. Ввести переменные А и В.
2. Установить значение переменной-счётчика равным нулю.
3. Установить в качестве начального значения изменяемой в цикле переменной значение А+1, а в качестве конечного значения – значение В-1.
4. Вывести на экран значение изменяемой в цикле переменной.
5. Увеличить в цикле на единицу переменную-счётчик N.
6. По окончании цикла вывести значение переменной-счётчика на экран.
Этап 3. Алгоритмизация. Составляем алгоритм решения задачи. Используем для записи алгоритма форму блок-схемы.
Любому оператору цикла можно сопоставить следующую последовательность значков:
Параметры P1 и P2 соответственно начальное и конечное значение для увеличиваемой на единицу в цикле переменной i. Группа операторов выполняется до тех пор, пока переменная i не станет больше P2.
Блок-схема алгоритма выглядит следующим образом:
Этап 4. Кодирование. Переводим разработанный алгоритм на язык программирования — составляем программу. Новым в задании является оператор цикла с параметрами. Для него в языках программирования предусмотрены специальные ключевые слова и задается специальная последовательность операторов.
Язык программирования Pascal
Оператору цикла с параметрами в языке Pascal соответствует последовательность:
for i := P1 to P2 do
Begin
группа операторов;
end;
Руководствуясь блок-схемой, записываем алгоритм на языке Pascal:
Begin // начало программы
Readln(A); // ввод переменной
Readln(B); // ввод переменной
N:=0; // переменная-счётчик
for i := A+1 to B-1 do // заголовок цикла
Begin // начало группы операторов, выполняемых в цикле
Writeln(i); // вывод числа
N:=N+1; // увеличения переменной-счётчика на единицу
End; // конец группы операторов, выполняемых в цикле
Writeln(N); // вывод количества чисел
По условию задачи все переменные должны быть объявлены как целые числа, следовательно, в разделе объявления переменных программы, располагающимся перед началом программы, должна содержаться следующая запись:
Var // объявление переменных
A,B,N,i:Integer;
Реализация программы в среде Delphi выглядит следующим образом:
program prog_lr6;
// указание компилятору создать консольное приложение
{$APPTYPE CONSOLE}
Var // объявление переменных
A,B,N,i:Integer;
Begin // начало программы
// сообщение пользователю о цели программы
writeln('Programma dlya vyvoda v poryadke vozrastaniya celih chisel ot A do B i ih kolichestva.');
// сообщение пользователю о необходимости ввода переменной
write('Vvedite A: ');
Readln(A); // ввод переменной
// сообщение пользователю о необходимости ввода переменной
write('Vvedite B: ');
Readln(B); // ввод переменной
N:=0; // переменная-счётчик
for i := A+1 to B-1 do // заголовок цикла
Begin // начало группы операторов, выполняемых в цикле
Writeln(i); // вывод числа
N:=N+1; // увеличения переменной-счётчика на единицу
End; // конец группы операторов, выполняемых в цикле
Writeln('Kolichestvo chisel: ',N); // вывод количества чисел
Readln; // задерживаем закрытие консольного окна
End. // конец программы
Язык программирования C
Оператору цикла с параметрами в языке C соответствует последовательность:
for(i = P1; i<P2; i++)
{
группа операторов;
}
Руководствуясь блок-схемой, записываем алгоритм на языке C:
scanf("%d",&A); // ввод числа
scanf("%d",&B); // ввод числа
N = 0; // переменная-счётчик
for (int i = A+1; i < B;i++) // заголовок цикла
{ // начало группы операторов, выполняемых в цикле
printf("%d\n",i); // вывод числа
N++; // увеличения переменной-счётчика на единицу
} // конец группы операторов, выполняемых в цикле
printf("Kolichestvo chisel: %d\n",N); // вывод количества чисел
По условию задачи все переменные должны быть объявлены как целые числа, следовательно, в разделе объявления переменных программы должна содержаться следующая запись:
// объявление переменных
int A,B,N;
Реализация программы в среде С Builder выглядит следующим образом:
#pragma hdrstop
// подключение модуля, в котором определены функции ввода и вывода
#include <stdio.h>
// подключение модуля, в котором определены функции max и min
#include <stdlib.h>
#pragma argsused
int main(int argc, char* argv[]) {
// объявление переменных
int A,B,N;
// сообщение пользователю о цели программы
printf("Programma dlya vyvoda v poryadke vozrastaniya celih chisel ot A do B i ih kolichestva.\n");
// сообщение пользователю о необходимости ввода переменной
printf("Vvedite A: ");
scanf("%d",&A); // ввод числа
// сообщение пользователю о необходимости ввода переменной
printf("Vvedite B: ");
scanf("%d",&B); // ввод числа
N = 0; // переменная-счётчик
for (int i = A+1; i < B;i++) // заголовок цикла
{ // начало группы операторов, выполняемых в цикле
printf("%d\n",i); // вывод числа
N++; // увеличения переменной-счётчика на единицу
} // конец группы операторов, выполняемых в цикле
printf("Kolichestvo chisel: %d\n",N); // вывод количества чисел
scanf("%d",&A); // задерживаем закрытие консольного окна
return 0;
}
Этап 5. Тестирование и отладка. Проверяем работу программы. Составляем тесты и запускаем по ним программу.
В формализованное решение задачи подставляем параметры А, В и получаем результаты.
Составляем три теста:
1) А = 2; В = 7; числа 3, 4, 5, 6 и количество чисел 4;
2) А = -3; В = 3; числа -2, -1, 0, 1, 2 и количество чисел 5;
3) А = 5; В = 20; числа 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 и количество чисел 14.
Запускаем программу и подставляем тестовые переменные:
1)
2)
3)
Результаты работы программы совпадают с ожидаемыми результатами — программа работает правильно.
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|