Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов. За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее. ✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать». Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами! Выполнение программы по шагам без захода в функцию
Это простейший способ выполнения программы по элементарным фрагментам. Выбор команды Debug | Step Over или нажатие клавиши F10 вызывает выполнение отладчиком всего кода в операторе, указанном строкой выполнения, включая любые вызываемые на ней процедуры или функции, пока управление не вернется обратно к программисту. После этого строка выполнения указывает следующий выполняемый оператор. Возьмем следующий пример программы.
Пример 1 – Простая программа, выполняемая по шагам.
#include " stdafx.h" #include < iostream>
using namespace std;
int sqr(int x) { //10 int q = x*x; //11 return q; //12 } //13
void main() { //0 const int N = 10; //1 int a[N] = {5, 2, 7, -9, 4, 8, -1, 0, 3, 6}; //2 //найдем сумму квадратов //3 //положительных элементов массива //4 int s = 0; //5 for (int i = 0; i < N; i++) //6 if (a[i] > 0) s += sqr(a[i]); //7 cout < < s < < endl; //8 return; //9 }
Если нажать клавишу F10, то строка выполнения перемещается на фигурную скобку в начале программы (строка 0), поскольку это первое, что выполняется в программе. Второе нажатие клавиши F10 перемещает строку выполнения вниз до оператора объявления константы размерности массива N на следующей строке (строка 1). После этого нажатие F10 переводит указатель к строке с объявлением массива и его инициализации (строка 2). Далее, при нажатии F10, строки 3 и 4 будут пропущены, так как они состоят только из комментариев и указатель переместится к строке 5. В ней производится объявление переменной для хранения суммы квадратов элементов массива s и ее инициализация нулем. После этого нажатие F10 вызывает начало выполнения цикла for. Первое нажатие инициализирует переменную i, и указатель переходит к строке 7. Далее нажатие F10 приводит к выполнению оператора if и указатель переходит на строку 8. Однако далее управление будет передано обратно на строку 6, так как цикл еще не завершен. Обратите внимание, что в окне Locals выводятся значения счетчика i, максимального элемента m, размерности массива N и сам массив a. Сравнение (строка 7) вызывается 10 раз, но не возможно понять выполняется ли при этом операция присвоение нового значения m. Выполнение по шагам не позволяет отладчику показывать детали любых вычислений для отдельной строки. Выполнение по шагам вызывает выполнение всего оператора сразу, поэтому невозможно видеть изменения в ходе выполнения цикла. Если необходимо видеть подробности, то в пример нужно внести следующее простое изменение:
Пример 2 – Модифицированная программа, для лучшего выполнения по шагам
#include " stdafx.h" #include < iostream>
using namespace std;
int sqr(int x) { //10 int q = x*x; //11 return q; //12 } //13
void main() { //0 const int N = 10; //1 int a[N] = {5, 2, 7, -9, 4, 8, -1, 0, 3, 6}; //2 //найдем сумму квадратов //3 //положительных элементов массива //4 int s = 0; //5 for (int i = 0; i < N; i++) //6 if (a[i] > 0) //7.0 s += sqr(a[i]); //7.1 cout < < s < < endl; //8 return; //9 }
Если теперь нажимать клавишу F10, то указатель после строка 7.0 будет при выполнении условия переходить на строку 7.1, а при не выполнении на строку 8.
|