Министерство образования и науки РФ Тверской государственный технический университет Кафедра электронных вычислительных машин Отчет к лабораторной работе № 6 Выполнил: студент группы ВМКСС 1003 Савин Л.Ю. Принял: доцент кафедры ЭВМ Борисов Н.А. Тверь, 2010 1. Цель работы Приобретение и закрепление знаний о разработке и использовании рекурсивных функций для решения различных задач. 2. Задание для выполнения Вариант 23 Уровень сложности 3 Написать рекурсивную функцию нахождения максимального элемента одномерного массива. 3. Алгоритм Начало Функция Main(string[] args) Введите массив A через пробелы Массив А заполнение S1 Массив N равен 0 Вывод (Макс(A, N)) Функция Заполнение(string S1) Строка [] mass = S1.Split(' ') для i = 0 от 0 до mass.Length A[i] = Convert.ToInt32(mass[i]) Возврат А Функция static int Макс(int[] A, int N) Если (N == A.Length - 1) Возвращаем А[N] Всё если Иначе s = Макс(A, N + 1) если (s > A[N]) возврат S всё если иначе возврат А[N] 4. Текст программы using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace вариант { class Program { static void Main(string[] args) { Console.WriteLine("Введите массив A через пробелы"); string S1 = Console.ReadLine(); int[] A = Заполнение(S1); int N = 0; Console.WriteLine(Макс(A, N)); } static int[] Заполнение(string S1) { string[] mass = S1.Split(' '); int[] A = new int[mass.Length]; for (int i = 0; i < mass.Length; i++) { A[i] = Convert.ToInt32(mass[i]); } return A; } static int Макс(int[] A, int N) { if (N == A.Length - 1) { return A[N]; } else { int s = Макс(A, N + 1); if (s > A[N]) { return s; } else { return A[N]; } } } } } 6. Результат выполнения ФИО: Савин Леонид Юрьевич Группа: ВМКСС 1003 Номер попытки:Дата сдачи:Дней от срока сдачи:Уровень сложности: КритерийЗамечания1Соответствие заданию2Оформление отчета3Описание алгоритма4Качество алгоритма5Качество исходного текста6Надежность программы7Стилистика кода Подпись: __________________ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Линия отрыва - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ФИО: Савин Леонид Юрьевич Группа: ВМКСС 1003 Номер попытки:Дата сдачи:Дней от срока сдачи:Уровень сложности: КритерийЗамечания1Соответствие заданию2Оформление отчета3Описание алгоритма4Качество алгоритма5Качество исходного текста6Надежность программы7Стилистика кода Подпись: __________________
1/--страниц