Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов. За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее. ✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать». Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами! Блок-схема
После составления блок-схемы по ней пишется программа, при этом каждый блок описывается соответствующим оператором алгоритмического языка.
float f; m1: Console.WriteLine(" Введите значение X"); float x = float.Parse((Console.ReadLine())); Console.WriteLine(" Введите значение Y"); float y = float.Parse((Console.ReadLine())); Console.WriteLine(" Введите значение Z"); float z = float.Parse((Console.ReadLine())); if (x > y) { if (x > z) f=x; else f=z; } else { if(y> z) f=y; else f=z; } Console.WriteLine('\n' + " Дано: X= " + x + " y= " + y + " z= " + z + '\n'+ " Результат: F= " + f); Console.WriteLine('\n' + " Для повторного ввода" + " набрать любую клавишу." + '\n'+ " Для завершения программы нажмите Enter."); string p = Console.ReadLine(); if (P! = " ") goto m1;
Рассмотренный алгоритм решения задачи примера 14 не является единственным. Ниже представлена блок-схема другого варианта алгоритма и основной фрагмент программы, с использованием оператора проверки Блок-схема Основной фрагмент программы
Пример 15.
Задание. Составить блок-схему и написать программу, которая определяет номер N области, в которой находиться точка М(х, у) с заданными координатами (см. рисунок 3.1). Границы области относить к области с наибольшим номером. Блок-схема
Пояснения к блок-схеме. В первом блоке производиться ввод численных значений для переменных X и Y, которые являются координатами точки М. Далее целесообразно сравнить переменную Y (координата по оси Y) с нулём. В блок-схеме это первый блок срав-нения, если его условие Y > 0 не выполняется (ложно), то координата по оси Y точки М отрицательна или равна нулю, а это значит, что она расположена ниже оси X или на ней, т. е. в области с номером N = 4. Если условие Y > 0 первого блока сравнения выполняется (истинно), то точка М расположена выше оси X, а это значит, что она может находиться в одной из областей с номером N = 1, N = 2 или N = 3. Далее для определения номера области X2 + Y2< 16, которое следует из уравнения окружности X2 + Y2 = R2, где радиус окружности. Если заданное условие выполняется, то точка расположена внутри окружности, а так как Y > 0, то внутри полуокружности. Согласно условию задачи внутри полуокружности точка может находиться либо в области с номером N = 1, либо в области с N = 2. Если условие X > 0 третьего блока сравнения выполняется (истинно), то точка расположена в области с N = 2, в противном случае с N = 1. После чего идёт печать результата. Если условие X2 + Y2 < 16 второго блока сравнения не выполняется (ложно), то точка М находиться вне полуокружности и над осью X так как Y > 0 т. е. в области N = 3. Далее представлена программа, составленная по рассмотренной блок-схеме.
int N; m2: Console.WriteLine(" Введите для точки М" + " координату по X "); float x = float.Parse((Console.ReadLine())); Console.WriteLine(" Введите для точки М" + " координату по Y "); float y = float.Parse((Console.ReadLine())); if (y > 0) { if (x * x + y * y < 16) { if (x > = 0) N = 2; else N = 1; } else { N = 3; } } else { N = 4; } Console.WriteLine('\t' + " РЕЗУЛЬТАТ: "); Console.WriteLine(" Точка M(" + x + "; " + y + ")" + " лежит в области с N=" + N); Console.WriteLine('\n' +" Для повторного ввода" + " нажать любую клавишу." +'\n'+ " Для завершения программы нажмите Enter."); string p = Console.ReadLine(); if (P! = " ") goto m2; Результаты расчета по программе примера 15. 2. Практическая часть Задания к лабораторной работе
Составить блок-схему и написать программу для выполнения следующих заданий. При этом руководствоваться выше приведёнными примерами выполнения заданий (см. примеры 14 и 15) Задание 1. Вычислить для своего варианта значение функции F. При получении в знаменателе нуля дать соответствующее сообщение. Варианты заданий
Задание 2. Определить для своего варианта номер N области, в которой находиться точка М (х, у) c заданными координатами. Границы области относить к области с наибольшим номером.
ЛАБОРАТОРНАЯ РАБОТА № 4 Управляющие операторы для организации циклов. Программы с циклами 1. Краткие теоретические сведения Циклом называется процесс исполнения группы операторов программы заданное количество раз, либо до тех пор, пока выполняется или не выполняется некоторое поставленное условие. Процесс исполнения группы операторов цикла один раз называется итерацией цикла. Группа операторов, расположенная между началом и концом цикла называется телом цикла. В С# есть три основных вида циклов: цикл for с параметром (счётчиком), цикл while с предусловием и цикл do while с постусловием.
Оператор цикла for Оператор цикла for (для) служит для организации циклов с параметром (счётчиком). Это наиболее распространённый оператор цикла. Он проще не только для чтения и понимания, но и проверки корректности цикл. Оператор цикла for имеет следующую структуру. for (выражение 1; условие; выражение 2) { // тело цикла } Открывающиеся и закрывающаяся фигурная скобки являются соответственно началом и концом тела цикла. В круглых скобках указаны следующие параметры цикла: - выражение 1, в нём указывается имя переменной управления циклом и присваивается ей начальное значение; - условие, представляет собой булево выражение, проверяющее значение переменной управления циклом, если результат проверки истинен, то цикл продолжается, если ложен, то цикл завершается; - выражение 2, как правило, это арифметическое выражение, счётчик, определяет на каждой итерации цикла порядок изменения переменной управления циклом, на определённую величину - шаг цикла. При работе цикла сначала выполняется выражение 1. В результате переменная управления циклом принимает своё первоначальное значение. Затем вычисляется условие и, если оно истинно, выполняются операторы тела цикла, заключённые в фигурные скобки. По достижению конца тела цикла (закрывающаяся фигурная скобка) управление переходит к вычислению выражение 2. В результате переменная цикла принимает новое значение, после чего вновь вычисляется условие и в случае его истинности цикл повторяется, в противном случае управление передаётся первому оператору, следующему за закрывающейся фигурной скобкой. Пример 1. int s, p, n; s = 0; P = 1; for (n = 1; n < = 10; n = n + 1) { s = s + n; p = p * n; } Console.WriteLine(,, s=" + s + " р=" + p); В данной программе определяется сумма s и произведение р чисел от одного до десяти включительно. Имя переменной управления циклом n, её заданное начальное значение 0. Условие продолжения цикла n < = 10. Порядок изменения переменной управления циклом, счётчик - n = n + 1. Таким образом, n изменяется от 1 до 10 с шагом 1.При этом на каждой итерации сумма s увеличивается на n, а произведение р в n раз. Ниже представлены результаты работы программы.
Если в рассмотренной программе вывод организовать внутри цикла, то можно проанализировать увеличение сумм s и произведения p на каждой итерации цикла. Кроме того можно записать программу более компактно см. пример 2. Пример 2. int s, p, n; s = 0; p = 1; for (n = 1; n < = 10; n ++) // или n += 1 { s = s + n; p = p * n; Console.WriteLine(" n =" + n +" s=" + s + " p=" +p); }
|