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 "Контрольные примеры". Ошибок не обнаружено.

Выводы

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


 

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

11043. Этапы развития мехатроники. Классификация мехатронных объектов 599.5 KB
  Этапы развития мехатроники. Классификация мехатронных объектов. Мехатроника является молодой областью науки и техники которая выделилась в самостоятельное направление совсем недавно. Об этом можно судить например по возрасту специальных периодических изданий: так ...
11044. Структура и принципы интеграции мехатронных модулей и машин 770 KB
  Структура и принципы интеграции мехатронных модулей и машин Структура мехатронных модулей Мехатронные модули по составу объединяемых устройств и элементов можно подразделить на три группы рис.3.1: модули движения; мехатронные модули движения; интеллек
11045. Мехатронные системы в машиностроительных технологиях 794.5 KB
  Мехатронные системы в машиностроительных технологиях. Автоматизация технологических процессов в производственной сфере проходит путем широкого внедрения мехатронных объектов. Аппаратурные вычислительные и программные возможности в настоящее время позволяют созд...
11046. Промышленные роботы. Основные определения и классификация 295.5 KB
  Промышленные роботы. Основные определения и классификация. Общие сведения о промышленных роботах Исторически мехатроника развивается в основном на базе робототехники. Однако мехатронный подход может быть реализован отнюдь не только в робото
11047. Манипуляторы робототехнических систем 219.5 KB
  Манипуляторы робототехнических систем 6.1. Манипулятор. Кинематические пары цепи и схемы. Базовым элементом робота является манипулятор механизм обладающий несколькими степенями подвижности который предназначен для перемещения и ориентации объектов ...
11048. Кинематика манипулятора. Прямая и обратная задача. Геометрия рабочего пространства 179.5 KB
  Кинематика манипулятора. Прямая и обратная задача. Геометрия рабочего пространства. 7.1 Общие сведения о кинематике манипуляторов. В процессе изучения кинематических свойств многозвенных механизмов возникает необходимость описания движения их звеньев без уче...
11049. Мехатронные транспортные средства, устройства бытового и медицинского назначения. Периферийные устройства компьютеров как мехатронные объекты 513.5 KB
  Мехатронные транспортные средства устройства бытового и медицинского назначения. Периферийные устройства компьютеров как мехатронные объекты. 8.1 Мехатронные транспортные средства. Современная автомобильная МС включает как правило целый ряд подсистем выполн
11050. Информационные системы в мехатронике 96.5 KB
  Информационные системы в мехатронике 1. Место и роль информационных систем Информационная система ИС представляет собой совокупность функционально объединенных измерительных вычислительных и других вспомогательных технических средств предназначенных для получ
11051. Первичные измерительные преобразователи 139.5 KB
  Первичные измерительные преобразователи Основные определения Измерительный преобразователь ИП средство измерения предназначенное для преобразования входного измерительного сигнала измеряемой величины в выходной сигнал более удобный для дальнейшего преобра...