39287

Рекурсия

Лабораторная работа

Информатика, кибернетика и программирование

Описание переменных главной функции Имя переменной Тип переменной Назначение [100] int массив чисел ni int вспомогательные переменные Краткое описание алгоритма 1Пользователь вводит количество элементов в массиве 2Программа заполняет массив случайными элементами 3Программа выводит сумму элементов массива Код программы на языке C С include locle include stdio.h int summint N int [100]; int in [100]; void min { setlocleLC_CTYPE russin ; clrscr; printf nКоличество элементов массива...

Русский

2013-10-02

24.35 KB

6 чел.

Федеральное государственное бюджетное образовательное учреждение высшего

профессионального образования

«Санкт-Петербургский государственный электротехнический

университет «ЛЭТИ» им. В.И.Ульянова (Ленина)»

Факультет компьютерных технологий и информатики

Кафедра вычислительной техники

Отчет

по лабораторной работе № 5

на тему «Рекурсия»

по дисциплине «Программирование»

Выполнил: студент группы 2306  Титков Е.В.

Проверила: к.т.н.,  доцент Сискович Т.И.

 

Санкт-Петербург

2013 г.

Цель работы

            Получение практических навыков в работе с рекурсивными алгоритмами

 Задание

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

Уточнение задания

Программа вычисляет сумму элементов одномерного  массива. Массив заполняется случайными элементами с помощью функции random.

Контрольные примеры

     Контрольные примеры  приведены в таблице 1 «Контрольные примеры ».

Таблица 1. Контрольные примеры обработки

Массив A

сумма

A[0]

A[1]

A[2]

A[3]

A[4]

A[5]

A[6]

1

2

3

4

5

6

7

28

1

0

0

0

0

7

3

11

Описание переменных главной функции

          Описание переменных главной функции приведено в таблице 3.

Таблица 3. Описание переменных главной функции

 

Имя переменной

Тип переменной

Назначение

a[100]

int

массив чисел

n,i

int

вспомогательные переменные

Краткое описание алгоритма

1)Пользователь вводит количество элементов в массиве

2)Программа заполняет массив случайными элементами

3)Программа выводит сумму элементов массива

 

Код программы на языке C/С++

#include <locale>

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <time.h>

 int summa(int N, int a[100]);

 int i,n, a[100];

 void main()

 {

         setlocale(LC_CTYPE, "russian");

   clrscr();

   printf("\nКоличество элементов массива? ");

         scanf("%d", &n);

   printf("\nВ сформированном массиве %d чисел:\n", n);

   randomize();

   for (i=0; i<n; i++)

      {

             a[i]= -10+random(21);

             printf("%d  ", a[i]);

             }

       printf("Сумма: %d", summa(n-1, a));

   }

 int summa(int N, int a[100])

 {

    if (N==0) return a[0];

          else return a[N]+summa(N-1, a);

 }

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

При выполнении программы полученные результаты совпадают с приведенными в таблице 1 "Контрольные примеры". Ошибок не обнаружено.

Выводы

При выполнении лабораторной работы получены практические навыки в работе с рекурсивными функциями  на языке С/С++.


 

А также другие работы, которые могут Вас заинтересовать

20531. Создание и редактирование простейших таблиц в EXEL 91.5 KB
  Интервал или блок ячеек задается адресами левой верхней и правой нижней ячеек разделенных двоеточием например А1:C4; B1:B10. Для выделения блока ячеек можно использовать мышь перемещать при нажатой левой кнопке или клавиши управления курсором при нажатой клавише Shift. Для удобства представления данных в EXСEL применяются различные форматы ячеек числовой денежный научный процент дата и др. Присвоить формат ячейке или блоку ячеек предварительно выделив их можно с помощью команды Ячейки меню Формат или нажав правую кнопку мыши и...
20532. Создание и редактирование различных видов диаграмм в Excel 74 KB
  Диаграмма – это графическое представление числовых данных. Ряды данных – это наборы значений которые требуется изобразить на диаграмме. Например при построении диаграммы дохода компании за последнее десятилетие рядом данных является набор значений дохода за каждый год. Математический аналог рядов данных это значения функции Y.
20533. Встроенные функции EXCEL. Статистический анализ 101 KB
  Встроенные функции EXCEL. Простейший способ получения полной информации о любой из них заключается в переходе на вкладку Поиск из меню после чего необходимо напечатать имя нужной функции и нажать кнопку Показать. Для удобства функции в EXCEL разбиты по категориям матаматические финансовые статистические и т. Зная к какой категории относится функция справку о ней можно получить следующим образом: Щелкните на закладке Содержание в верхней части окна а затем последовательно пункты Создание формул и проверка книг Функции листа.
20534. Создание, дополнение и чтение файла данных 80 KB
  Создать файл данных со следующей структурой: шифр товара наименование план выпуска на каждый квартал фактический выпуск в каждом квартале. выпуск Факт. выпуск План. выпуск Факт.
20535. Обработка файла данных 23.5 KB
  Данные по машинам автобазы: номер марка план перевозок факт. Макет исходных данных номер марка план факт о 367 нр ГАЗ 105 100 л 577 ор ЗИЛ 185 185 н 705 ар КамАЗ 220 220 в 368 еу ЛИАЗ 343 340 а 859 ср МАЗ 368 368 у 364 ар УАЗ 373 373 м 290 ао КамАЗ 288 287 н 390 ал ГАЗ 100 99 Алгоритм программы Программа по разработанному алгоритму Командный файл Обработка файла данных CLEAR {Очистка экрана} SET TALK OFF {Команда запрета выполнения отдельных команд} USE Imfd...
20536. Изучение принципов микропрограммного управления 23 KB
  Владимир 2000 Цель работы: Изучение принципов построения микропрограммного устройства управления. Развитие методов параллельной обработки данных и параллельного программирования показало что сложные алгоритмы могут быть эффективно реализованы при микропрограммном управлении что обусловило применение принципов микропрограммного управления в ЭВМ высокой производительности. Микропрограммный принцип управления обеспечивает реализацию одной машинной команды путем выполнения микрокоманд записанных в постоянной памяти.
20537. КЭШ память с прямым распределением 32 KB
  Владимир 2000 Цель работы: Изучение принципа построения кэшпамяти с пря мым распределением. Введение Кэшпамять это быстродействующая память расположенная между центральным процессором и основной памятью. В больших универсальных ЭВМ основная память которых имеет емкость порядка 3264 Мбайт обычно используется кэшпамять емкость 64256 Кбайт т.
20539. Уравнение Беллмана для непрерывных процессов 92.5 KB
  Разобьем этот интервал на 2 интервала Рис Где бесконечно малая величена Запишем уравнение 3 на этих 2х отрезках Используя принцип оптимальности: 4 Обозначим через Подставив в 4 Поскольку значение от выбора управления не зависит то ее можем внести под знак минимума и тогда выражение 5 Разделим каждое слагаемое этого уровня на Перейдем к приделу при На основании теоремы о среднем значении интеграла на бесконечно малом отрезке времени Пояснение Рисунок Тогда 5а 6 полная производная этой функции. Вместо Полученное...