Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Programming c++ (begin-if-else)

C++

  • Be the first to comment

  • Be the first to like this

Programming c++ (begin-if-else)

  1. 1. Стив Джобс: «I think everybody should learn how to program a computer because it teaches you how to think» «Каждый должен учиться программированию, потому что это учит людей думать».
  2. 2. В современном мире изучение программирования открывает перед человеком большие возможности и перспективы. И дело не только в шестизначных цифрах, которые готовы платить крупные компании за работу квалифицированных IT-специалистов, но и в том, что программирование — ключ к пониманию особенностей работы современной техники и, независимо от избранной профессии, базовые навыки программирования могут быть полезными всем.
  3. 3. «Мы хотим сорвать покров с магического искусства программирования, который отделяет вас от Марка Цукерберга», — говорит глава Code.org, экс-менеджер Microsoft Хади Партови.
  4. 4. ТИПЫ ДАННЫХ: int – целочисленный char – символьный bool – логический float – вещественный с плавающей точкой одиночной точности, 7 зн. double – вещественный с плавающей точкой двойной точности, 14 зн. 4 1 4 1 8 4 byte byte byte byte byte byte
  5. 5. int a, b, c float x, y, z double x, y, z char d, e, f bool g, h, k 12 byte 12 byte 24 byte 3 byte 3 byte
  6. 6. width(), precision() и fill().
  7. 7. int width(int wide); int width() const;
  8. 8. int precision(int prec); int precision() const;
  9. 9. char fill(char type ch); char fill() const;
  10. 10. x sqrt(x) х^2 0000001 0000001 0000001 0000002 01.4142 0000004 0000003 01.7321 0000009 0000004 0000002 0000016 0000005 02.2361 0000025 0000006 02.4495 0000036
  11. 11. Таблица Флаги форматирования и их назначение Флаг Назначение hex Значения целого типа преобразуются к основанию 16 (как шестнадцатеричные) dec Значения целого типа преобразуются к основанию 10 oct Значения целого типа преобразуются к основанию 8 (как восьмеричные) fixed Числа с плавающей точкой выводятся в формате с фиксированной точкой (то есть nnn.ddd) scientific Числа с плавающей точкой выводятся в так называемой научной записи (то есть n.хххЕуу) showbase Выводится основание системы счисления в виде префикса к целому числовому значению (например, число 1FE выводится как 0x1FE) showpos При выводе положительных числовых значений выводится знак плюс uppercase Заменяет определенные символы нижнего регистра на символы верхнего регистра (символ "е" при выводе чисел в научной нотации на "Е" и символ "х" при выводе 16- ричных чисел на "X") left Данные при выводе выравниваются по левому краю поля right Данные при выводе выравниваются по правому краю поля internal Добавляются символы-заполнители между всеми цифрами и знаками числа для заполнения поля вывода skipws Ведущие символы-заполнители (знаки пробела, табуляции и перевода на новую строку) отбрасываются stdio Потоки stdout, stderr очищаются после каждой операции вставки unitbuf Очищаются все выходные потоки после каждой операции вставки в поток stdio Очищаются stdout, stderr после каждой операции вставки в поток
  12. 12. В качестве второго параметра функции setf() можно использовать следующие константы, определенные в классе ios: static const long basefield; // = dec | oct | hex static const long adjustfield; // = left | right | internal static const long floatfield; // = scientific | fixed
  13. 13. Таблица Манипуляторы ввода-вывода и их назначение Манипулятор Использование Назначение dec Ввод-вывод Устанавливает флаг dec endl Вывод Вставляет символ новой строки и очищает буфер ends Вывод Вставляет символ конца flush Вывод Очищает буфер потока hex Ввод-вывод Устанавливает флаг hex oct Ввод-вывод Устанавливает флаг oct resetiosflags (iosbase::long mask) Ввод-вывод Сбрасывает ios-флаги в соответствии с mask Setbase (int base) Ввод-вывод Задает основание системы счисления для целых (8, 10, 16) Setfill (int c) Ввод-вывод Устанавливает символ-заполнитель setiosflags (iosbase::long mask) Ввод-вывод Устанавливает ios-флаги в соответствии с mask setprecision (int n) Ввод-вывод Устанавливает точность чисел с плавающей точкой setw(int n) Ввод-вывод Устанавливает минимальную ширину поля ws Ввод Устанавливает пропуск символов- заполнителей
  14. 14. . . . char array[SIZE]; cin>>setw(sizeof(array)); // Или cin.width(sizeof(array)); // Ограничивает число вводимых символов . . . // и позволяет избежать выхода // за границу массива. cin >> array;
  15. 15. ТЕМА: «Программирование ветвящихся алгоритмов на языке C++»
  16. 16. Начало Конец
  17. 17. ОПЕРАТОРЫ ОТНОШЕНИЯ В УСЛОВНЫХ ВЫРАЖЕНИЯХ < Меньше <= Меньше или равно > Больше >= Больше или равно == Равно ! = Не равно
  18. 18. Условный оператор с одной ветвью if условие then команды end Условный оператор с двумя ветвями if условие then команды1 else команды2 end
  19. 19. if (условие) фрагмент кода 1 else фрагмент кода 2 Использование условного оператора в C
  20. 20. Условие – это любое выражение, которое возвращает булево значение true или false.
  21. 21. if (условие) { операторы1 } else { операторы2 } Замена одиночного оператора блоком Блок состоит из группы операторов, заключенных в фигурные скобки ({ и }). Фрагменты кода операторы1 и операторы2 являются блоками, т.к. заключены в фигурные скобки. Использовать блоки, даже в случае одного оператора.
  22. 22. Фигурные скобки, отмечающие границы блока, могут находится на отдельных строках: if (условие) { операторы1 } else { операторы2 }
  23. 23. В общем случае условный оператор if имеет вид: if (выражение 1) оператор1; else if (выражение 2) оператор 2; else if (выражение 3) оператор 3; else оператор N;
  24. 24. Оператор множественного выбора switch Синтаксис оператора множественного выбора: switch (выражение) { case значение 1: оператор 1; break; case значение 2: оператор 2; break; … default: оператор по несовпадению }
  25. 25. Пример 1 #include <iostream> #include <cstdio> using namespace std; int main() { int a,b,res; char op; cout << "type a->" << endl; cin >> a; cout << "type b->" << endl; cin >> b; cout << "type op->" << endl; //op - операция (+,-,/,*) cin >> op; switch(op) { case '+': res = a+b; cout << "res = " << res << endl; break; case '-': res = a-b; cout << "res = " << res << endl; break; case '*': res = a*b; cout << "res = " << res << endl; break; default : cout << "Unknown oparator" << endl; } }
  26. 26. Самостоятельно: реализуйте деление и предусмотрите деление на ноль! ЗАДАЧА 1#include <iostream> #include <cstdio> using namespace std; int main() { int a,b,res; char op; cout << "type a->" << endl; cin >> a; cout << "type b->" << endl; cin >> b; cout << "type op->" << endl; //op - операция (+,-,/,*) cin >> op; switch(op) { case '+': res = a+b; cout << "res = " << res << endl; break; case '-': res = a-b; cout << "res = " << res << endl; break; case '*': res = a*b; cout << "res = " << res << endl; break; default : cout << "Unknown oparator" << endl; } }
  27. 27. Самостоятельно: распишите сегодняшние пары и их время! ЗАДАЧА 2 #include <iostream> using namespace std; int main() { int item; puts("1. Night;"); puts("2. Morning;"); puts("3. Day;"); puts("4. Afternoon;"); puts("5. Evening;"); cout << "Print item number" << endl; cin >> item; switch(item) { case 1: puts("From 22 to 3 - Night"); break; case 2: puts("From 4 to 10 - Morning"); break; case 3: puts("From 11 to 14 - Day"); break; case 4: puts("From 15 to 16 - Afternoon"); break; case 5: puts("From 17 to 21 - Evening"); break; default: puts("Error!"); } return 0; }
  28. 28. Ввести 3 числа cin a,b,c типа double, вывести максимальное из этих чисел #include <iostream> #include <clocale> using namespace std; intmain() { double a,b,c,max; setlocale(LC_ALL,"russian"); cout << "Введите a,b,c: << endl; cin >> a >> b >> c; /*реализовать блоки if*/ /*вывод*/ /*закрытие тела main*/ ЗАДАЧА 3

×