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

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

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

Задание
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#