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

Выводы

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


 

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

6402. Человеческая деятельность и ее содержание 116 KB
  Человеческая деятельность и ее содержание Освоение и отчуждение. Проблема свободы. Основные способы освоения мира человеком. Познание. Практически-духовное освоение мира Освоение и отчуждение. Проблема свободы. Центральной проблемой...
6403. Общество как предмет философского анализа 71 KB
  Общество как предмет философского анализа. Социальная философия и ее задачи. Основные философские подходы к пониманию общества. Структура общества Социальная философия и ее задачи. В обыденном сознании существует иллюзия непосредственного во...
6404. Философия истории. Движущие силы и субъекты исторического процесса 66 KB
  Философия истории Предмет и задачи философии истории Периодизация истории общества Движущие силы и субъекты исторического процесса Предмет и задачи философии истории Для историка прошлое - это данность, которая находится вне...
6405. Стилі сучасної української літературної мови у професійному спілкуванні 44.27 KB
  Стилі сучасної української літературної мови у професійному спілкуванні План Функціональні стилі української мови та сфера їх застосування. Основні ознаки функціональних стилів. Текст як форма реалізації мовнопрофесійної діяльності (комунікати...
6406. Основні поняття соціолінгвістики 121 KB
  Основні поняття соціолінгвістики Мовна спільнота. Мовний код, субкод.. Перемикання і змішування кодів. Інтерференція Мовна варіативність. Мовна норма. Соціолект. Сфера використання мови. Білінгвізм. Ди...
6407. Правовідносин, що регулюються нормами трудового права 101 KB
  Правовідносин, що регулюються нормами трудового права Поняття трудових правовідносин Правові відносини в суспільстві формуються і розвиваються внаслідок наявності правових норм, які приймаються державою для регулювання суспільних відносин. Всту...
6408. Створення рисунків і графічних обєктів 133.5 KB
  Для проведення ліній та стрілок. Для цього, вибравши початкову точку та утримуючи натиснутою ліву кнопку миші, проведіть лінію до кінцевої точки. Якщо при проведенні лінії утримувати натиснутою клавішу...
6409. Структура операційної системи 110.5 KB
  Структура операційної системи Розглянемо шість різних структур ОС, що використовуються (або використовувалися раніше), щоб отримати деякі уявлення про спектр їхніх можливостей. Монолітні системи Така організація операційної системи є найпоширенішою....
6410. Психологічні особливості дошкільного віку 127.5 KB
  Психологічні особливості дошкільного віку 1. Особливості психічного розвитку немовляти 2. Початковий розвиток особистості на етапі раннього дитинства 3. Психологічні особливості розвитку особистості дитини дошкільного віку 4. Психологічна готовність...