Similar presentations:
Практикум по программированию на языке программирования C++
1. Практикум по программированию на языке программирования C++
Жолондевская С.П., учитель информатикиГосударственного учреждения образования
«Гимназия г.Дрогичина»
2. ВВЕДЕНИЕ
• Программа на языке C++ состоит изфункций, описаний и директив
препроцессора.
• (Препроцессор — это программа,
которая выполняет обработку файла
исходного кода перед началом
компиляции).
3. Общие сведения
С++Pascal
Программа состоит Программа состоит
из инструкций
из операторов
4. Общие сведения
С++Все компоненты
инструкции друг от
другого отделяются
символом «пробел»,
например,
y = a + b;
Pascal
Пробелы ставятся для
отделения друг от друга
служебных слов и
операндов, при записи
арифметических
действий пробелы не
ставятся, например,
y:=a+b;
5. Первая программа
С++6.
С++1 #include <iostream>
Pascal
Uses …;
директива "include" определяет, какие
файлы и библиотеки надо подключить
в данном месте в код программы и
начинается с символа #
#include подключает заголовочный файл
<iostream>, который содержит необходимую
информацию для управления вводом/выводом.
7.
С++3 using namespace std;
Pascal
Type …;
директива using открывает доступ к пространству
имен (англ. namespace) std, в котором определяются
средства стандартной библиотеки языка C++.
8.
С++int main()
Pascal
Function …;
Каждая программа на языке С++ должна иметь как
минимум одну функцию - функцию main(). Именно с
этой функции начинается выполнение приложения. Ее
имя main фиксировано и для всех программ на Си
всегда одинаково.
Определение функции main начинается с возвращаемого
типа. Функция main в любом случае должна возвращать
число. Поэтому ее определение начинается с ключевого
слова int.
() - список параметров функции, заключается в круглые
скобки (в данном случае список пуст).
9. Определение функции main, использующей параметры
1 int main (int argc, char *argv[])2 {
3 /*блок кода, который и содержит в
виде инструкций собственно те
действия, выполняемые функцией
main*/
4 }
10. Комментарии
• В языке C++ есть два типа комментариев:однострочный и многострочный.
Однострочный комментарий размещается на
одной строке после двойного слеша //
• Например,
return 0;
// выходим из функции
• Многострочный комментарий заключается
между символами /* текст комментария */.
Он может размещаться на нескольких
строках
11.
PascalС++
5{
6 cout << "Hello, World!";
7 return 0;
8}
Begin
Write (‘Hello, World!’);
End.
Набор инструкций – это блок кода.
Блок кода заключается в фигурные скобки, а
инструкции помещаются между открывающей и
закрывающей фигурными скобками.
В конце инструкции в языке C++ ставится
точка с запятой (;)
12. Тело функции
• cout << "Hello, World!";• return 0;
cout << инструкция вывода, которая в данной
программе выводит на экран строку Hello,
World,
<< ставятся перед каждым выводимым
значением.
return 0 возвращает в точку вызова значение 0,
которое означает, что программа выполнена
успешно.
13. Особенности вывода
\n — обозначение символа новой строки.14. Задача 1
Число десятковДано целое неотрицательное
число N, определите число
десятков в нем (предпоследнюю
цифру числа). Если число
однозначное, то можно считать,
что число десятков равно нулю.
Формат входных данных
На вход дается целое положительное
число N (0 ≤ N ≤ 1000000).
Формат выходных данных
Выведите одно целое число - ответ на
задачу.
Sample Input:
73
Sample Output:
7
Задача 1
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
cout << n % 100 / 10;
return 0;
}
15. Описание данных
int n;Pascal
С++
int n; // Описание переменной целого типа
int i, j;
float a, b;
double x, y;
bool enabl;
var i, j: Integer;
a, b: Single;
x, y: Double;
enabl: Boolean;
Переменные в программе на С++ определяются в произвольном месте
функции перед первым использованием, их область видимости
ограничена блоком. Глобальные переменные определяются вне функций
и доступны функциям, определённым ниже.
Значения переменных по умолчанию не определены
16. Типы целочисленных данных
Типbool
Приставки
целочисленных
типов
Байт
Диапазон
принимаемых значений
данных: (логический) тип данных
целочисленный
shortbool
– приставка
укорачивает исключительно
тип данных, к которому
используется
для
1
0 / 255
применяется,
путём уменьшения
размера
занимаемой
хранения результатов
логических
выражений.
У
памяти;
целочисленный
данных
логического(символьный)
выражения тип
может
быть один из двух
long – приставка удлиняет тип данных, к которому
результатов
true или
false
– если логическое
Тип
данных
char
– .это
тип
char
1
0true
/ целочисленный
255
применяется,
путём
увеличения
размера
занимаемой
выражение
истинно,
false
–для
если
логическое
данных,
который
используется
представления
памяти;
целочисленные
типы данных
выражение
ложно.
как диапазон
допустимых
символов.
То – Так
есть,
каждому
символу
unsigned
(без знака)
приставка
увеличивает
диапазон
значений
типазначений
данных
bool
0767
додиапазона
255, то
short int
2
-32
768
/ от32
положительных
в два
раза,
при
этом
диапазон
соответствует
определённое
число
из
диапазон
с535
определёнными
в
отрицательных
значений
таком
типе
данных
[0; 255].
Тип данный
данных
char0вназывают
символьным
unsigned short int сопоставили
2
/ 65
храниться
не может.
языке
программирования
типом данных,
так как с егологическими
помощью
int
4
-2
147
483
648
/
2
147
483
647
По сути, мы
целочисленный
тип для
константами
trueимеем
и
falseодин
. Таким
образом,
константе
определяются
символы.
Все
закодированные
представления
целых чисел
–числа
int. Благодаря
true эквивалентны
все
от 1приставкам
до 255
символы
представлены
в
таблице
ASCII.
unsigned int
0 / 4некоторое
294 967 295
short,4 long, unsigned появляется
разнообразие
включительно,
тогда
как
константе
false
типов
данных
int
,
различающихся
размером
long int
4
-2 147 одно
483 648
/ 2число
147 483
647
эквивалентно
только
целое
– 0.
занимаемой памяти и (или) диапазоном принимаемых
значений.
unsigned long int
4
0 / 4 294 967 295
17. Действительные числа
ТипБайт
Диапазон принимаемых значений
типы данных с плавающей точкой
float
4
-2 147 483 648.0 / 2 147 483 647.0
long float
8
-9 223 372 036 854 775 808 .0 /
9 223 372 036 854 775 807.0
double
8
-9 223 372 036 854 775 808 .0 /
9 223 372 036 854 775 807.0
18. Инструкция ввода
С++cin >> n;
cin >> n >> b;
Pascal
Readln(n);
Readln(n,b);
Символы >> называются операцией извлечения
из потока. Данные символы используются
вместе с оператором ввода cin.
>> ставятся перед каждой вводимой переменной
19. Арифметические операции
• Бинарные операторы – операторы, которыеприменяются к двум операндам (слева и справа)
Оператор
Символ
Пример
Операция
Сложение
+
x+y
x плюс y
Вычитание
−
x−y
x минус y
Умножение
*
x*y
x умножить на y
Деление
/
x/y
x разделить на y
x%y
Остаток от
деления x / y
Деление с
остатком
%
20. Арифметические операции
cout << n % 100 / 10;6754
21. Задача
Белочки и орешкиN белочек нашли K орешков и решили разделить их
поровну. Определите, сколько орешков получит каждая
белочка и сколько орехов останется после того, как все
белочки возьмут себе равное количество орешков.
Формат входных данных
На вход дается два целых положительных числа N и
K, каждое из которых не превышает 10000.
Формат выходных данных
Выведите два целых числа - ответ на задачу.
Sample Input:
3 14
Sample Output:
42
22.
23. Условный оператор
С++Инструкция if
if (условие)
{
…
};
Pascal
Оператор ветвления
if условие then
begin
…
end;
В C++ условие обязательно помещается в скобки.
Ключевого слова then нет.
Инструкция if-else
if (a < b)
std::cout << "a is too low!";
else
std::cout << "a is ok";
if a < b then
write('a is too low!')
else write('a is ok');
24. Простые условия
С++if (x != 0) y = 0;
else
if (y == 0) x = 1;
Pascal
if x <> 0 then
y := 0
else
if y = 0 then x := 1;
Сравнение на равенство записывается с помощью двух
знаков «равно» ==.
Сравнение на неравенство записывается в виде !=.
25. Составные условия
С++&&
||
Pascal
And
Or
Oператор
Символ
Пример
Операция
Логическое НЕ
!
!x
true, если x — false и false,
если x — true
Логическое И
&&
x && y
true, если x и y — true, в
противном случае — false
Логическое ИЛИ
||
x || y
true, если x или y — true, в
противном случае — false
26. Задача 2
Шахматный король ходит по горизонтали, вертикали и диагонали, но толькона 1 клетку. Даны две различные клетки шахматной доски, определите,
может ли король попасть с первой клетки на вторую одним ходом.
Формат входных данных
Программа получает на вход четыре числа от 1 до 8 каждое, задающие
номер столбца и номер строки сначала для первой клетки, потом для
второй клетки.
Формат выходных данных
Программа должна вывести YES, если из первой клетки ходом короля
можно попасть во вторую или NO в противном случае.
Sample Input:
4
4
5
5
Sample Output:
YES
27. Задача 2
28. Арифметические операторы присваивания
ОператорСимвол
Пример
Операция
Присваивание
=
x=y
Присваиваем значение y
переменной x
Сложение с
присваиванием
+=
x += y
Добавляем y к x
Вычитание с
присваиванием
−=
x −= y
Отнимаем y от x
Умножение с
присваиванием
*=
x *= y
Умножаем x на y
Деление с
присваиванием
/=
x /= y
Делим x на y
Деление с
остатком с
присваиванием
%=
x %= y
Оставляем остаток от деления
x / y в переменной x
29. Команда повторения с предусловием
С++Инструкция while
while (an < b) {
an += a;
++n;
}
Pascal
Цикл «пока»
while an < b do
begin
an := an + a;
inc(n)
end;
Запись an += a эквивалентна an = an + a.
++ n – записи n = n + 1.
30. Задача 3
Последовательность состоит из натуральных чисел изавершается числом 0. Определите значение наибольшего элемента
последовательности.
Формат входных данных
Вводится последовательность целых чисел, оканчивающаяся
числом 0 (само число 0 в последовательность не входит, а служит
как признак ее окончания).
Формат выходных данных
Выведите ответ на задачу.
Sample Input:
1
7
9
0
Sample Output:
9