Эксперт
Сергей
Сергей
Задать вопрос
Мы готовы помочь Вам.

1 Цели и задачи

Цель:

  1. Обеспечить ввод переменной в виде интервала и шага изменения для уравнения вида результаты вычисления записывать в двумерный массив и выводить его значения на экран.
  2. Разбить программу на функции.

Задачи:

  1. Обеспечить ввод переменной пользователем (х4) в виде интервала и шага изменения.
  2. Создание массива.
  3. Разбиение программы на функции.
  4. Тестирование и отладка.
  5. Составление отчета.

2 Теоретическая часть

Массивы

Массивы представляют собой упорядоченные коллекции элементов с одним и тем же типом данных. Доступ к ним осуществляется при помощи имени массива в совокупности со смещением от начала массива нужного элемента.

Одномерный массив

Одномерный массив хранит фиксированное число элементов в линейном порядке, и для определения каждого элемента требуется лишь одно значение индекса. В C# квадратные скобки в объявлении массива должны следовать за типом данных.

Общие сведения о массивах

Массив имеет следующие свойства.

  • Массив может быть одномерным, многомерным или массивом массивов.
  • Значение по умолчанию числовых элементов массива задано равным нулю, а элементы ссылок имеют значение NULL.
  • Невыровненный массив является массивом массивов и поэтому его элементы являются ссылочными типами и инициализируются значением null.
  • Индексация массивов начинается с нуля: массив с элементами n индексируется от 0 до n-1.
  • Элементы массива могут быть любых типов, включая тип массива.
  • Типы массива являются ссылочными типами, производными от абстрактного базового типа Array. Поскольку этот тип реализует IEnumerable и IEnumerable<T>, в C# во всех массивах можно использовать итерацию foreach.

Многомерные массивы

Массивы могут иметь несколько измерений. Например, следующее объявление создает двумерный массив из четырех строк и двух столбцов.

int[,] array = new int[4, 2];

А следующее объявление создает трехмерный массив с количеством элементов 4, 2 и 3:

int[, ,] array1 = new int[4, 2, 3];

Инициализация массива

Массив можно инициализировать при объявлении, как показано в следующем примере:

int[,] array2D = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };int[, ,] array3D = new int[,,] { { { 1, 2, 3 } }, { { 4, 5, 6 } } };

Можно также инициализировать массив, не указывая его размерность:

int[,] array4 = { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };

Если нужно создать переменную массива без инициализации, то необходимо использовать оператор new, чтобы присвоить массив переменной. Например:

int[,] array5;array5 = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 }, { 7, 8 } };   // OK//array5 = {{1,2}, {3,4}, {5,6}, {7,8}};   // Error

Можно также присвоить значение элементу массива, например:

array5[2, 1] = 25;

В следующем примере кода переменные массивов инициализируются значениями по умолчанию (за исключением массивов массивов).

int[,] array6 = new int[10, 10];

Процедурное программирование. Функции

Процедурное программирование опирается на функции, отделенные от обрабатываемых ими данных. Объектно-ориентированное программирование объединяет данные и функции в таком понятии, как объект, и фокусирует внимание на взаимодействии между объектами.

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

3 Руководство пользователя

Открыть программу для решения  уравнения. В открывшемся окне ввести значения x1, x2, x3, ввести начало интервала для переменной х4, конец и шаг изменения.(x1>0, x2>=0, sin(x3)!=0 то есть х3 не равно 0 с периодом π, cos(x4)!=0 то есть х4 не равно 90 с периодом π)  (Рисунок 1)

Рисунок 1 . Окно программы

 

Возможные ошибки:

  1. «Значение х должно быть числовым» — ошибка выводится при использовании буквенных значений.
  2. Предлагается ввести переменную заново, если она не удовлетворяет следующим условиям.(x1>0, x2>=0, sin(x3)!=0 то есть х3 не равно 0 с периодом π, cos(x4)!=0 то есть х4 не равно 90 с периодом π)
  3. 3. «Начало интервала не может быть больше конца» — ошибка выводится, когда пользователь вводит значение границ, где начало интервала больше чем конец.
  4. «Шаг не должен выходить за пределы границ» — ошибка выводится при введении шага, выходящего за пределы интервала.
  5. «В введенном интервале присутствует недопустимое значение» — ошибка выводится при введение интервала, при котором переменная y в одном или нескольких своих значениях принимает недопустимое значение.

4      Руководство программиста

4.1 Блок схема

Рисунок 2.Блок-схема

4.2 Описание функций

Main (string[] args) — принимает в качестве переменной массив всех неименованных аргументов командной строки, переданных функции.

bool NumberOrWordХ1,X2,Х3,Х4(bool isError, double x2) — функция для проверки введённых значений, для переменных, на буквы. Возвращает значение isError.

bool NumberOrWord(bool isError) — проверяет введённые значения на буквы. Возвращает значение isError.

double EnterX1() — функция служит для ввода значения х1, возвращает значение переменной х1.

double EnterX2()- функция служит для ввода значения х2 возвращает значение переменной х2.

double EnterX3() — функция служит для ввода значения х3, возвращает значение переменной х3.

double EnterX4() — функция служит для ввода значения х4, возвращает значение переменной х4.

 

4.3 Описание локальных переменных

bool isError –принимает в себя значение, полученное после проверки  на числовое или буквенное значение (true или false).

char answer —  ключевое слово char используется для объявления символа Юникода в диапазоне от U+0000 до U+ffff.

double x1, x2, x3, x4, Step, K – переменные, принимающие в себя введенные пользователем значения.

double y – переменная, значение которой получено в результате решения данного уравнения.

int interpret – принимает в себя количество итераций.

 

5 Вывод

Изменил программу лабораторной работы №2, то есть обеспечил ввод переменной в виде интервала и шага изменения для уравнения вида  результаты вычисления записываются в двумерный массив и выводятся на экран. Разбил программу на функции.

Была ли полезна данная статья?
Да
60.74%
Нет
39.26%
Проголосовало: 1080

или напишите нам прямо сейчас:

Написать в MAXНаписать в TelegramНаписать в WhatsApp