Функции и массивы на C#

Практическая работа, 09 Декабря 2014, автор: пользователь скрыл имя

Описание работы


Задание
1) Получение практических навыков при работe с одномерными, многомерными и рваными массивами.
2) Получение практических навыков при работe с функциями, передаче данных в функции различными способами, получение результатов из функций различными способами.
3) Получение практических навыков при создании диалоговых консольных приложений.

Файлы: 1 файл

Отчет по ЛР1.docx

— 49.03 Кб (Скачать файл)

                command = 0;

                ok = false;

                do

                {

                    try

                    {

                        Console.Write("Ваш выбор > ");

                        command = Convert.ToInt32(Console.ReadLine());

                        Console.WriteLine();

                        ok = true;

                    }

                    catch (FormatException)

                    {

                        Console.WriteLine("Ошибка! Вы ввели некоректное число! Введите заново!");

                        ok = false;

                    }

                    if (ok)

                    {

                        if ((command <= 0) || (command >= 5))

                        {

                            Console.WriteLine("Ошибка! Такой команды не существует. Попробуйте снова!");

                            ok = false;

                        }

                    }

                } while (!ok);

 

                if (command == 1)

                {

                    Console.WriteLine("<Рваный массив создан. Теперь его надо заполнить.>");

                    int How = 0;

                    How = HowWrite();

                    size3 = WhatSize();

                    if (size3 != 0)

                    {

                        if (How == 1)

                        {

                            mas3 = createRaggedMasOut(size3);

                        }

                        else if (How == 2)

                        {

                            mas3 = createRaggedMasRand(size3);

                        }

                        Console.WriteLine("Массив создан успешно.");

                        isEmpty = false;

                    }

                    else

                    {

                        Console.WriteLine("Создан пустой массив.");

                        isEmpty = true;

                    }

                    isAlreadyPut = true;

                    //minMenuFirst();

                }

                if (command == 2)

                {

                    if ((isAlreadyPut == true) && (isEmpty == false)) // а надо ли разрешать в пустой массив что-то записывать?

                    {

                        Console.WriteLine();

                        Console.WriteLine("Добавим K строк в конец массива");

                        int[][] mas33 = null;

                        mas33 = Task3(mas3);

                        if (mas3.Length == mas33.Length)

                        {

                            Console.WriteLine("Задание выполнено неуспешно");

                        }

                        else

                        {

                            mas3 = mas33;

                            size3 = mas3.Length;

                            Console.WriteLine("Задание выполнено успешно");

                        }

                    }

                    else

                    {

                        Console.WriteLine("Вы еще не создали массив или он пуст!");

                    }

                    //minMenuFirst();

                }

                if (command == 3)

                {

                    Console.WriteLine();

                    if ((isAlreadyPut == true) && (isEmpty == false))

                    {

                        isPrintRagged(mas3);

                        Console.WriteLine();

                    }

                    else

                    {

                        Console.WriteLine("Нечего печатать.");

                    }

                    //minMenuFirst();

                }

            } while (command != 4);

        }

 

        static void Main(string[] args)

        {

            rnd = new Random();

           

            int YourChoise = 0;

            do

            {

                //YourChoise = 0;

                YourChoise = Choise();

                Menu(YourChoise);

            } while (YourChoise != 4);

        }

    }

}

 

 

Тестирование

  1. Формирование массива

№

Входные данные

Ожидаемый результат

Полученный результат

Т1

Целое положительное число

Создается массив

Создан массив

Т2

0

Создается пустой массив.

Выводится сообщение пользователю о пустом массиве

Создан пустой массив. Сообщение выведено.

Т3

Вещественное число

Ошибка конвертации в тип целых чисел. Выводим сообщение пользователю

Ошибка. Сообщение выведено.

Т4

Символ

Ошибка конвертации в тип целых чисел. Выводим сообщение пользователю

Ошибка. Сообщение выведено.

Т5

100

Слишком большой размер

Слишком большой размер

Т6

После ряда чисел вставили пробел

Удаляем последний значащий пробел. Переписываем в массив элементы.

Пробел удален. Массив записан.


 

  1. Печать массива

№

Входные данные

Ожидаемый результат

Полученный результат

Т1

Массив пуст

Сообщение об ошибке

Сообщение выведено

Т2

Массив не пустой

Печатаем массив

Печатаем массив


 

  1. Выполняем задание

№

Входные данные

Ожидаемый результат

Полученный результат

1

Массив пустой

Сообщение о том, что массив пуст и с ним ничего нельзя сделать

Сообщение пользователю выведено. Включен флаг о запрете других операций над массивом.

2

Массив не пустой

Все хорошо. Переходим к выполнению задания

Переход выполнен успешно

3

Нашли четные элементы с одномерном массиве

Должно вывестись сообщение о том, что задание выполнено неуспешно и четных элементов не найдено.

Сообщение выведено.

4

Не нашли четные элементы в одномерном массиве

Должно вывестись сообщение о том, что задание выполнено успешно и нули после них добавлены.

Массив изменился, нули добавлены. Функция может работать при повторном вызове. Сообщение выведено

5

Нашли строку в матрице, в которой есть 0

Должно вывестись сообщение о том, что строка найдена, и удаление произошло успешно.

Удаление выполнено. Сообщение выведено.

6

Не нашли в матрице строки с нулем

Должно вывестись сообщение о том, что в матрице нет строк с нулем, и о не успешности выполнения задания. Массив остался прежним.

Массив не изменился. Сообщение выведено.

7

Решили не добавлять строки в рваный массив

Должно вывестись сообщение о решении не добавлять элементы в массив. Массив не должен измениться.

Сообщение выведено. Массив остался прежним.

8

Добавили строки в рваный массив

Должно вывестись предупреждение о том, что новые строки будут заполнены ДСЧ. По окончании сообщение об успешности выполнения задания.

Предупреждение выведено. Массив изменен. Сообщение выведено.


 

 


Информация о работе Функции и массивы на C#