- •1.Иср Visual c#. Первые программы
- •1.1.Основы иср
- •2.Численные типы в языке c#
- •3.Строковые и символьные типы в языке c#
- •3.1.Взаимные преобразования
- •3.2.Стандартное форматирование
- •3.3.Нестандартное форматирование
- •4.Тип DateTime в языке c#
- •4.1.Консольное приложение
- •4.2.Windows Forms приложение
- •5.Линейные структуры
- •6.Ветвления
- •6.1.Ветвление if; else
- •6.2.Выбор switch; case
- •7.Циклы с неизвестным числом повторений
- •7.1.Цикл while
- •7.2.Цикл do…while
- •8.Циклы с заданным числом повторений
- •8.1.Команда Goto и метки
- •8.2.Цикл for
- •8.3.Вложенные циклы for
- •8.4.Команда break
- •8.5.Команда continue
- •9.Логические операции
- •10.Массивы
- •10.1.Одномерный массив
- •10.2.Матрица
- •11.Файлы
- •12.Подпрограммы
- •13.Операции со строками
- •13.1.Сравнение строк
- •13.2.Объединение строк
- •13.3.Разбиение строк
- •14.Исключения
- •14.1.Операции с вещественными числами
- •14.2.Операции с целыми числами
- •15.Работы с классами и объектами
- •16.Использование командной строки при запуске программ
- •17.Отладка и тестирование в с#
- •18.Многопоточные приложения
- •19.Работа с папками
- •20.Многооконные приложения
- •21.Компонент ProgressBar
- •22.Списки
- •23.Таблицы
- •24.Графика. Рисуем функции
- •24.1.Текст и график функции в форме
- •24.2.Компонент Chart
- •25.Графика, рисование фигур
- •26.Графика, растровые изображения
- •27.Графика, анимация
- •28.Приложения
- •28.1.Класс System.Math
- •28.2.Класс System.Console
- •28.3.Класс System.String
6.Ветвления
Предмет исследований
Условная и безусловная передача управления;
Вычислительные процессы с разветвляющейся структурой.
Разработать алгоритмы решения в соответствии с заданием.
Составить программы решения задач.
Контрольные вопросы
Какие структуры вычислительных процессов Вы знаете?
Как организовать разветвление вычислений?
Ветвление if... else.
Вложенные ветвления.
Инструкция выбора switch.
Фраза case.
Зачем во фразе case применяется оператор break?
6.1.Ветвление if; else
Вычислить значения функции по варианту задания. Вывести значения исходных данных и полученные результаты, сопровождая их именами переменных. Значения аргумента взять из указанного диапазона так, чтобы протестировать все ветви программы. Проект – консольное приложение.
Пример. Вычислить при y=1.3, x=[0.. 2.1] с шагом 0.3 значения функции a. Результат вывести в виде таблицы. Проект – консольное приложение.
Блок-схема алгоритма представлена на рисунке. Для организации цикла введены следующие переменные: xs - начальное значение, xk - конечное значение dx - шаг изменения аргумента x.
Листинг программы
using System;
namespace ConsoleConditional_If
{
class Program
{
static void Main()
{
// Переменные типа double
double a = 0, x = 0, xs = 0, xk = 2.1, dx = 0.3, y = 1.3;
Console.WriteLine(" Таблица a(x)"); // Заголовок
for (x = xs; (x <= xk); x = x + dx) // Начало цикла
{
if (y * x < 1) // Первое ветвление
a = Math.Exp(-y * x) * Math.Cos(y * x);
else if (y * x == 1) // Вложенное ветвление
a = Math.Cos(y * x + 1);
else if (y * x > 1) // Вложенное ветвление
a = y * x + 1;
Console.WriteLine("x = {0,3} a = {1}",x,a);
}
Console.WriteLine();
Console.WriteLine("Нажмите любую клавишу");
Console.ReadKey(); // Пауза
Консоль перед закрытием программы:
6.2.Выбор switch; case
Вывести сообщения для подтверждения имени пользователя с использованием инструкции выбора switch. Проект – консольное приложение.
Пример. Вывести сообщения о номере пользователя с номерами от 1 до 3. Проект – консольное приложение. Пользователя просят ввести свой номер. Для каждого из известных пользователей выводится подтвердение его имени. Для пользователя с неизвестным номером сообщается, что он новичок.
Листинг программы
using System;
namespace ConsoleConditionalSwitch
{
class Program
{
static void Main()
{
int user = 1;
Console.Write("Ваш номер = ");
user = Convert.ToInt32(Console.ReadLine());
switch (user)
{
case 1: Console.WriteLine("Здравствуйте Userl"); break;
case 2: Console.WriteLine("Здравствуйте User2"); break;
case 3: Console.WriteLine("Здравствуйте User3"); break;
default: Console.WriteLine("Здравствуйте новичок"); break;
}
Console.WriteLine("Нажмите любую клавишу");
Console.ReadKey(); // Пауза
}
}
}