Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
20
Добавлен:
30.04.2013
Размер:
130.56 Кб
Скачать

Program Simple; {Версия 4}

var

N : integer;

I : integer;

F : boolean;

imax : integer;

begin

writeln(‘Программа определения принадлежности’);

writeln(‘числа множеству простых чисел’);

repeat

write(‘Введите исходное натуральное число ’);

readln(N);

if N<=0 then

writeln(‘Число должно быть больше 0’);

until N>0;

F:= false;

imax:=round(sqrt(N));

I:=2;

while (not F) and (I<= round(sqrt(N))) do

begin

if (N mod I) = 0 then

F:= true

else I:=I+1;

end;

If f then

writeln('Число не является простым')

else

writeln('Число простое');

end.

Удобство сопровождения - это способность программы обеспечивать простоту процесса поддержания программы (программного обеспечения) в работоспособном состоянии и простоту внесения в нее необходимых модификаций.

Это свойство обеспечивается правильным оформлением текста программы и наличием необходимой программной документации.

Для простоты сопровождения требуется:

  • Структурированность программы

  • Наличие комментариев в тексте программы

  • Имена переменных должны нести смысловую нагрузку или соответствовать общепринятым обозначениям. (В нашем примере вместо безличного имени F для признака «делитель найден» лучше использовать более информативное имя, например, FlagFound).

Структурированность программы достигается за счет выполнения следующих требований к ее записи:

  • Программа составляется на базе ограниченного набора простых конструкций (следование, ветвление, цикл) без использования переходов с помощью оператора goto.

  • Конструкции записываются с отступами так, чтобы была видна структура программы.

В нашем случае программа структурирована только частично. В ней нарушены правила ступенчатой записи конструкции «если» в теле цикла repeat . . until и в конце программы.

Наличие комментариев обеспечивает так называемую самодокументированность программы. Для достижения этого рекомендуется снабдить комментариями все основные переменные и части программы.

Текст программы после внесения в него изменений примет вид, удовлетворяющей рассмотренным выше критериям. Он приведен на следующей странице.

{Определение принадлежности множеству простых чисел}

{Разработал Питеркин В.М.}

Program Simple; {Версия 5}

var

N : integer; {исходное число}

I : integer; {очередной делитель}

FlagFound : boolean; {признак ”делитель найден”}

imax : integer;{максимальный делитель}

begin

{ввод данных}

writeln(‘Программа определения принадлежности’);

writeln(‘числа множеству простых чисел’);

{повторять, пока число не будет введено правильно}

repeat

write(‘Введите исходное натуральное число ’);

readln(N);

if N<=0 then

writeln(‘Число должно быть больше 0’);

{end if}

until N>0;

{вычисление результата}

FlagFound:= false;

imax:=round(sqrt(N));

I:=2;

{повторять, пока делитель не найден и }

{не просмотрены все возможные делители}

while (not F) and (I<= round(sqrt(N))) do

begin

{если число делится без остатка – делитель найден}

if (N mod I) = 0 then

F:= true

else

{ перейти к следующему возможному делителю}

I:=I+1;

{end if}

end;

{вывод результатов}

if FlagFound then

writeln('Число не является простым')

else

writeln('Число простое');

{end if}

end.

Соседние файлы в папке лекции