Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2205 Прог на ЯВУ Павлов.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
2.91 Mб
Скачать

Var // объявление переменных

N,i:Integer;

F:array[1..100] of Integer;

Реализация программы в среде Delphi выглядит следующим образом:

program prog_lr8;

// указание компилятору создать консольное приложение

{$APPTYPE CONSOLE}

var // объявление переменных

N,i:Integer;

F:array[1..100] of Integer;

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

// сообщение пользователю о цели программы

writeln('Programma generiruyushaya N chisel posledovatelnosti Fibonachi.');

// сообщение пользователю о необходимости ввода переменной

write('Vvedite N: ');

readln(N); // ввод переменной

// присваиваем первым двум элементам в качестве значений единицу

F[1]:=1;

F[2]:=1;

// рассчитываем значения элементов последовательности Фибоначчи

for i := 3 to N do // заголовок цикла

begin // начало группы операторов, выполняемых в цикле

F[i]:=F[i-1]+F[i-2];

end; // конец группы операторов, выполняемых в цикле

// выводим массив на экран

for i := 1 to N do // заголовок цикла

begin // начало группы операторов, выполняемых в цикле

writeln(F[i]); // вывод числа

end; // конец группы операторов, выполняемых в цикле

readln; // задерживаем закрытие консольного окна

end. // конец программы

Язык программирования C

В языке С объявление массива имеет два формата:

спецификатор-типа описатель [константное - выражение];

спецификатор-типа описатель [ ];

Описатель - это идентификатор массива.

Спецификатор-типа задает тип элементов объявляемого массива. Элементами массива не могут быть функции и элементы типа void.

Константное-выражение в квадратных скобках задает количество элементов массива. Константное-выражение при объявлении массива может быть опущено в следующих случаях:

- при объявлении массив инициализируется,

- массив объявлен как формальный параметр функции,

- массив объявлен как ссылка на массив, явно определенный в другом файле.

В языке С первый элемент массива имеет индекс равный 0.

Пример объявления и инициализации символьного массива:

char str[] = "объявление символьного массива";

Следует учитывать, что в символьном литерале находится на один элемент больше, так как последний из элементов является управляющей последовательностью '\0'.

Руководствуясь блок-схемой, записываем алгоритм на языке C:

scanf("%d",&N); // ввод количества элементов

// присваиваем первым двум элементам в качестве значений единицу

F[0] = 1;

F[1] = 1;

// рассчитываем значения элементов последовательности Фибоначчи

for (int i = 2; i < N;i++) // заголовок цикла

{ // начало группы операторов, выполняемых в цикле

F[i] = F[i-1] + F[i-2];

} // конец группы операторов, выполняемых в цикле

// выводим массив на экран

for (int i = 0; i < N;i++) // заголовок цикла

{ // начало группы операторов, выполняемых в цикле

printf("%d\n",F[i]); // вывод числа

} // конец группы операторов, выполняемых в цикле

По условию задачи все переменные должны быть объявлены как целые числа, следовательно, в разделе объявления переменных программы должна содержаться следующая запись:

// объявление переменных

int N;

int F[100];

Реализация программы в среде С Builder выглядит следующим образом:

#pragma hdrstop

// подключение модуля, в котором определены функции ввода и вывода

#include <stdio.h>

#pragma argsused

int main(int argc, char* argv[]) {

// объявление переменных

int N;

int F[100];

// сообщение пользователю о цели программы

printf("Programma generiruyushaya N chisel posledovatelnosti Fibonachi.\n");

// сообщение пользователю о необходимости ввода переменной

printf("Vvedite N: ");

scanf("%d",&N); // ввод числа

// присваиваем первым двум элементам в качестве значений единицу

F[0] = 1;

F[1] = 1;

// рассчитываем значения элементов последовательности Фибоначчи

for (int i = 2; i < N;i++) // заголовок цикла

{ // начало группы операторов, выполняемых в цикле

F[i] = F[i-1] + F[i-2];

} // конец группы операторов, выполняемых в цикле

// выводи массив на экран

for (int i = 0; i < N;i++) // заголовок цикла

{ // начало группы операторов, выполняемых в цикле

printf("%d\n",F[i]); // вывод числа

} // конец группы операторов, выполняемых в цикле

scanf("%d",&N); // задерживаем закрытие консольного окна

return 0;

}

Этап 5. Тестирование и отладка. Проверяем работу программы. Составляем тесты и запускаем по ним программу.

В формализованное решение задачи подставляем параметр N и получаем результаты.

Составляем три теста:

1) N = 3; числа 1, 1, 2;

2) N = 10; числа 1, 1, 2, 3, 5, 8, 13, 21, 34, 55;

3) N = 15; числа 1, 1, 2, 3, 5, 8, 13, 21, 34, 55,89,144,233,377,610.

Запускаем программу и подставляем тестовые переменные:

1)

2)

3)

Результаты работы программы совпадают с ожидаемыми результатами — программа работает правильно.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]