Функции и массивы на 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 |
Целое положительное число |
Создается массив |
Создан массив |
Т2 |
0 |
Создается пустой массив. Выводится сообщение пользователю о пустом массиве |
Создан пустой массив. Сообщение выведено. |
Т3 |
Вещественное число |
Ошибка конвертации в тип целых чисел. Выводим сообщение пользователю |
Ошибка. Сообщение выведено. |
Т4 |
Символ |
Ошибка конвертации в тип целых чисел. Выводим сообщение пользователю |
Ошибка. Сообщение выведено. |
Т5 |
100 |
Слишком большой размер |
Слишком большой размер |
Т6 |
После ряда чисел вставили пробел |
Удаляем последний значащий пробел. Переписываем в массив элементы. |
Пробел удален. Массив записан. |
- Печать массива
№ |
Входные данные |
Ожидаемый результат |
Полученный результат |
Т1 |
Массив пуст |
Сообщение об ошибке |
Сообщение выведено |
Т2 |
Массив не пустой |
Печатаем массив |
Печатаем массив |
- Выполняем задание
№ |
Входные данные |
Ожидаемый результат |
Полученный результат |
1 |
Массив пустой |
Сообщение о том, что массив пуст и с ним ничего нельзя сделать |
Сообщение пользователю выведено. Включен флаг о запрете других операций над массивом. |
2 |
Массив не пустой |
Все хорошо. Переходим к выполнению задания |
Переход выполнен успешно |
3 |
Нашли четные элементы с одномерном массиве |
Должно вывестись сообщение о том, что задание выполнено неуспешно и четных элементов не найдено. |
Сообщение выведено. |
4 |
Не нашли четные элементы в одномерном массиве |
Должно вывестись сообщение о том, что задание выполнено успешно и нули после них добавлены. |
Массив изменился, нули добавлены. Функция может работать при повторном вызове. Сообщение выведено |
5 |
Нашли строку в матрице, в которой есть 0 |
Должно вывестись сообщение о том, что строка найдена, и удаление произошло успешно. |
Удаление выполнено. Сообщение выведено. |
6 |
Не нашли в матрице строки с нулем |
Должно вывестись сообщение о том, что в матрице нет строк с нулем, и о не успешности выполнения задания. Массив остался прежним. |
Массив не изменился. Сообщение выведено. |
7 |
Решили не добавлять строки в рваный массив |
Должно вывестись сообщение о решении не добавлять элементы в массив. Массив не должен измениться. |
Сообщение выведено. Массив остался прежним. |
8 |
Добавили строки в рваный массив |
Должно вывестись предупреждение о том, что новые строки будут заполнены ДСЧ. По окончании сообщение об успешности выполнения задания. |
Предупреждение выведено. Массив изменен. Сообщение выведено. |