Инфоурок Информатика КонспектыКонспект занятия на тему "Запись выражений на языке С++. Операторы присваивания, ввода, вывода"

Конспект занятия на тему "Запись выражений на языке С++. Операторы присваивания, ввода, вывода"

Скачать материал

План занятия. Запись выражений на языке С++.

Операторы присваивания, ввода, вывода.

 

Тема занятия: Запись выражений на языке С++. Операторы присваивания, ввода, вывода

 

Цели занятия:

Образовательные:

  - изучить основные операции с числами и переменными и формами их записи в языке программирования С++;

Воспитательные:

 - воспитание ответственности за результат своей работы;

Развивающие:

 - развитие внимательности, памяти и логического мышления.

 

Оснащение: план занятия, дидактический материал, презентация.

 

Ход занятия

1. Организационный момент. (2 мин)

Отметить присутствующих.

 

2. Актуализация опорных знаний (15 мин)

 - Что такое идентификатор?

 - В языке С++ имеет значение, стоит ли в имени переменной маленькая или большая буква?

 - Правила составления имен переменных в языке С++?

 - Какие существуют ограничения на составление имен переменных?

 

Опрос на карточках (готовые карточки см. в конспекте на стр.7-8):

I вариант

1. Что такое идентификатор?

2. Для чего можно использовать оператор «cin.get();» ?

3. Какая инструкция  обеспечивает механизм завершения работы функции?

4. Перечислите названия простых (скалярных типов данных).

5. Приведите пример инициализации переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

int 1a;

long double main;

float x@3;

7. Запишите оператор объявления поименованной константы k, равной -7,9.

II вариант

1. В языке С++ имеет значение, стоит ли в имени переменной маленькая или большая буква?

2. Какие существуют ограничения на составление имен переменных?

3. Напишите пример директивы препроцессору.

4. Что означает ключевое слово void?

5. Приведите пример объявления переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

double _a;

integer b;

unsigned int main;

7. Запишите оператор объявления поименованной константы m, равной целому числу -121.

III вариант

1. Назовите правила составления имен переменных в языке С++.

2. Каким именем обозначается главная функция?

3. Напишите код для получения доступа функциям в пространство имен std.

4. Перечислите названия составных (структурированных) типов данных.

5. Приведите пример инициализации переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

int перем1;

chary a;

signed char return;

7. Запишите оператор объявления поименованной константы sum, равной 23.5.

IV вариант

1. Кто считается автором языка программирования C?

2. Напишите код для получения доступа функциям в пространство имен std.

3. Как называются скобки, в которые заключается тело главной функции main?

4. Напишите названия целых типов данных в языке C++ (минимум 5 типов).

5. Приведите пример объявления переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

double c-5;

unsigned long _mas;

bool код_1;

7. Запишите оператор объявления поименованной константы des, равной целому числу 345.

 

V вариант

1. Кто считается автором языка программирования C++?

2. Назовите особенности алфавита языка программи­рования C++.

3. Напишите пример директивы препроцессору.

4. Напишите названия вещественных типов данных в языке C++ (минимум 2 типа).

5. Приведите пример инициализации переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

float c&1;

short int 5b;

int return;

7. Запишите оператор объявления поименованной константы max, равной 32536.

VI вариант

1. Какова структура программы на языке С++?

2. Назовите примеры расширений файлов, содержащих код программы на языке C++.

3. Какая инструкция  обеспечивает механизм завершения работы функции?

4. Напишите названия символьных и логического типов данных в языке C++ (минимум 3 типа).

5. Приведите пример объявления переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

char симв_1;

long k-6;

int main;

7. Запишите оператор объявления поименованной константы tri, равной целому числу 3.

 

 

3. Изучение нового материала.

Три категории операций в зависимости от количества операндов:

1) Унарные операции – выполняются над единственным операндом, например, –a.

2) Бинарные операции – предполагают наличие двух операндов, например, a+b.

3) Тернарная операция – работает с тремя операндами. Такая операция в языке С – единственная, называется «условная операция».

 

Операторы:

1.      Оператор объявления, создает переменную. Например, int k;

Этот оператор предоставляет два вида информации: необходимый тип хранения и метку, привязанную к этой ячейке. Оператор объявляет, что программа требует объема памяти, достаточного для хранения целого числа, для которого в C++ используется метка int. С этого момента программа будет использовать имя k для обозначения значения, хранящегося в указанной ячейке памяти.

В общем случае, объявление указывает тип сохраняемых данных и имя программы, которая будет использовать данные, хранящиеся в этой переменной.

Вы знаете, что в языках С и Pascal все объявления располагаются в самом начале функции или процедуры. А в языке C++ такого требования нет, поэтому объявлять переменную можно перед ее первым использованием. Таким образом, чтобы узнать о типе переменной, вам не придется возвращаться в начало программы.

Примечание: В языке C++ принято объявлять переменную как можно ближе к той строке, в которой она впервые используется.

 

2.      Оператор присваивания, присваивает этой переменной определенное значение: k=1;

Оператор присваивания присваивает значение ячейке памяти.

carrots = 25;

Символ = называется операцией присваивания. Одной из необычных особенностей языка C++ (как и С) является то, что вы можете использовать операцию присваивания несколько раз подряд. Например, приведенный ниже код является вполне допустимым:

int s;

int b;

int y;

y = b = s =88;

Операция присваивания выполняется поочередно, справа налево. Сначала значение 88 присваивается переменной s, затем это же значение присваивается переменной b и, наконец, переменной y.

Второй оператор присваивания демонстрирует возможность изменения значения переменной:

carrots = carrots - 1; // изменяет значение переменной

Выражение в правой части оператора присваивания (carrots - 1) является примером арифметического выражения. Компьютер вычитает 1 из 25, т.е. текущего значения переменной carrots, в результате чего получается 24. Затем операция присваивания сохраняет новое значение в ячейке carrots.

 

3.      Объект cout может принимать строки, числа для последующего их отображения. Например, объект cout принимает переменную целочисленного типа:

cout <<carrots;

Программа не выводит слово carrots; взамен этого она выводит целое значение 25, присвоенное переменной carrots. Здесь следует отметить два трюка. Во-первых, cout заменяет переменную carrots ее текущим числовым значением — 25. Во-вторых, cout транслирует это значение в соответствующие символы вывода.

По сути, операция вставки (<<) в языке C++ изменяет свое поведение в зависимости от того, с данными какого типа она работает (строками или числами).

Следующая строка выполняет конкатенацию вывода

cout << "Now you have" << carrots « " carrots." << endl;

 

4.      Объект сіn — аналог cout, но предназначенный для ввода.

 

5.       Подгонка кода программы

Если в предшествующих листингах вы добавляли cin.get(), вам необходимо добавить два оператора cin.get () в данный листинг, чтобы сохранить вывод программы видимым на экране. Первый оператор cin. get () будет читать символ новой строки, генерируемый нажатием клавиши <Enter> или <Return> после набора числа, а второй заставит программу приостановиться до нажатия клавиши <Enter> или <Return> вновь.

 

При выводе операция << вставляет символы в поток вывода. При вводе объект сіn использует операцию >> для извлечения символов из потока ввода. Обычно в правой части операции указывается переменная, которой будут присваиваться извлеченные данные. (Символы << и » были выбраны для визуальной подсказки направления потока информации.)

 

В C++ предоставляются операции для выполнения пяти базовых арифметических действий: сложения, вычитания, умножения, деления и получения остатка от деления. Каждая из этих операций использует два значения (называемые операндами) для вычисления конечного результата. Операция и ее операнды вместе образуют выражение. Например, рассмотрим следующий оператор:

int a = 4 + 2;

Значения 4 и 2 — это операнды, знак + обозначает операцию сложения, а 4 + 2 — это выражение, результатом которого является 6.

 

Простые арифметические операции:

1.       - — унарный минус;

2.      + — сложение;

3.      - — вычитание (бинарный минус);

4.      * — умножение;

5.      / — деление;

6.      % — остаток от деления (для целых  чисел). Знак результата этой операции совпадает со знаком первого операнда. Например, 11%3=2, 11%-3=2, 11%3=-2, -11%-3=-2.

 

Ниже перечислены пять базовых арифметических операций в C++.

1.      Операция + выполняет сложение операндов. Например, 4 + 20 дает 24.

2.      Операция - вычитает второй операнд из первого. Например, 12-3 дает 9.

3.      Операция * умножает операнды. Например, 28*4 дает 112.

4.      Операция / выполняет деление первого операнда на второй. Например, 1000 / 5 дает 200. Если оба операнда являются целыми числами, то результат будет равен целой доли частного. Например, 17/3 дает 5, с отброшенной дробной частью.

5.      Операция % находит остаток от деления первого операнда на второй. Например, 19 % 6 равно 1, поскольку б входит в 19 три раза, с остатком 1. Оба операнда при этом должны быть целочисленными; использование операции % над числами в формате с плавающей точкой приведет к ошибке времени компиляции. Если один из операндов будет отрицательным, то знак результата удовлетворяет следующему правилу: (а/b) *b + а%b равно а. Естественно, в качестве операндов можно использовать как переменные, так и константы.

 

#include <iostream>

int main ()

{

using namespace std;

float a, b;

cout << "Введите число: ";

cin >> a;

cout << "Введите другое число";

cin >> a;

cout << "a = " << a << "; b = " << b << endl;

cout << "a + b = " << a + b << endl;

cout << "a - b = " << a - b << endl;

cout << "a * b = " << a * b << endl;

cout << "a / b = " << a / b << endl;

return 0;

}

 

Примечание: Для float гарантируется только шесть значащих цифр. Когда нужна более высокая точность, необходимо использовать тип double или long double.

 

Порядок выполнения операций: приоритеты операций и ассоциативность

Когда над одним и тем же операндом может быть выполнено несколько операций, C++ руководствуется правилами старшинства или приоритетов, чтобы определить, какая операция должна быть выполнена первой. Арифметические операции выполняются в соответствии с алгебраическими правилами, согласно которым умножение, деление и нахождение остатка от деления выполняются раньше операций сложения и вычитания. Поэтому выражение 3 + 4*5 следует читать как 3+ (4 * 5), но не (3 + 4) * 5. Таким образом, результатом этого выражения будет 23, а не 35. Конечно, чтобы обозначить свои приоритеты, вы можете заключать операнды и операции в скобки.

Значит, запись на языке С++ следующих выражений:

,

 

Однако знания только лишь приоритетов операций не всегда бывает достаточно. Взгляните на следующий оператор:

float logs = 120 /4*5; // каким будет результат: 150 или 6?

И в этом случае над операндом 4 могут быть выполнены две операции. Однако операции /и * имеют одинаковый уровень приоритета, поэтому программа нуждается в уточняющих правилах, чтобы определить, нужно сначала 120 разделить на 4 либо 4 умножить на 5. Поскольку результатом первого варианта является 150, а второго — 6, выбор здесь очень важен. В том случае, когда две операции имеют одинаковый уровень приоритета, C++ анализирует их ассоциативность: слева направо или справа налево.

 

Различные результаты, получаемые после деления

Давайте продолжим рассмотрение особенностей операции деления (/). Поведение этой операции зависит от типа операндов. Если оба операнда являются целочисленными, то C++ выполнит целочисленное деление. Это означает, что любая дробная часть результата будет отброшена, приводя результат к целому числу. Если один или оба операнда являются значениями с плавающей точкой, то дробная часть остается, поэтому результатом будет число с плавающей точкой. В действительности, при комбинировании смешанных типов C++ преобразует их к одному типу.

Язык C++ довольно либерален, разрешая присваивание числового значения одного типа переменной другого типа. Всякий раз, когда вы это делаете, значение преобразуется к типу переменной, которая его получает.

Примечание: Результат деления целого числа на целое имеет целый тип, причем дробная часть результата просто отбрасывается. Например: 17/3=5, 99/10=9, (9/4)*4=8.

 

// изменение типа при инициализации

#include <iostream>

int main ()

{

using namespace std;

float a = 3; // int преобразован в float

int b = 3.9832; // float преобразован в int

int c = 7.2E12; .// результат не определен в C++

cout << "a = " << a << endl;

cout << "b = " << b << endl;

cout << "c = " << c << endl;

return 0;

}

 

Операция присвоения: a=B. Если типы левой и правой части совпадают, то переменной, которая указана слева, присваивается значение переменной или выражения, расположенного справа. В противном случае предварительно происходит автоматическое преобразование типа правой части к типу левой.

Пример:

int i =5, j=3, k;

double a = 2.95, d;

k=i+a; // выполняется преобразование к целому типу, k=7

d=i+j; // выполняется преобразование к вещественному типу, d=8.0.

 

В случае последовательного использования нескольких операций присвоения в одном выражении последние выполняются справа налево, причем, каждый раз происходит необходимое преобразование типов.

Например,

int i=2, j;

float d=3.55, r,s;

s=j=r=i+d; // результат – вещественное значение 5.0 (r=5.55, j=5, s=5.0)

 

Унарные арифметические операции, совмещенные с присвоением:

1) префиксная форма: ++a, --a – увеличение и уменьшение операнда на 1 соответственно (имеет самый высокий приоритет, т.е. выполняется в первую очередь)

2) постфиксная форма: a++, a-- - увеличение или уменьшение операнда на 1 соответственно (имеет самый низкий приоритет, выполняется в последнюю очередь после операций присвоения).

Например:

Int i=2, j=5, I, J;

I= ++i; J= j++;

printf(“I=%d i=%d : J=%d j=%d”, I, I, J,j)

На экран будет выведено:

I=3 i=3 : J=5 j=6

Т.к. для I сначала – наращивание, потом – присвоение, а для J – указанные действия следуют в обратном порядке.

Примечание: операции ++ и – не могут быть применены к константам. Например, неприменимы такие операции: 5++, (a+b)--

Эти операции обеспечивают некоторую экономию в быстродействии программы.

 

Бинарные арифметические операции, связанные с присвоением:

Можно увеличивать или уменьшать операнд на любую величину, которая задается в качестве второго операнда с помощью операций += и -=.

Например, a+100 (увеличение a на 100), b-=delta (уменьшение b на величину delta).

*= - умножает значение первого операнда на значение второго;

/= - делит;

%= - определяет остаток от деления (только для операндов целых типов).

Например, n*=3; m%=5.

Эти операции имеют только постфиксную форму, значит, являются низкоприоритетными.

 

4. Закрепление нового материала.

 

Задача: написать на языке С++ программу, вычисляющую следующие выражения:    

1)    

2)    

3)    

4)    

5)    

6)    

7)    

 

 - Что такое унарные и бинарные операции?

 - Для каких типов данных определена операция «%»?

 - В чем особенность выполнения операций целочисленного деления?

 - Как получить вещественный результат операции целочисленного деления?

 - Как выполняется операция присвоения?

 - В какой последовательности выполняются операции присвоения?

 - Чем отличаются префиксные операции от постфиксных?

 - Что означает преобразование типов при выполнении различных операций?

 - Приведите пример преобразования типов.

 

5. Самостоятельная работа.

6. Подведение итогов занятия: выводы, оценки за ответы на вопросы.

7. Д/з: [1] стр.79-94, [5] стр.63-70, 116-120, СР№5: в тетради ответить на вопросы № 1-5, 7, 11, 14, 16 из [1] на стр. 90

 

Подпись преподавателя ________ /Серебрякова Л.В./


 

I вариант

1. Что такое идентификатор?

2. Для чего можно использовать оператор «cin.get();» ?

3. Какая инструкция  обеспечивает механизм завершения работы функции?

4. Перечислите названия простых (скалярных типов данных).

5. Приведите пример инициализации переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

int 1a;

long double main;

float x@3;

7. Запишите оператор объявления поименованной константы k, равной -7,9.

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

II вариант

1. В языке С++ имеет значение, стоит ли в имени переменной маленькая или большая буква?

2. Какие существуют ограничения на составление имен переменных?

3. Напишите пример директивы препроцессору.

4. Что означает ключевое слово void?

5. Приведите пример объявления переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

double _a;

integer b;

unsigned int main;

7. Запишите оператор объявления поименованной константы m, равной целому числу -121.

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

 

III вариант

1. Назовите правила составления имен переменных в языке С++.

2. Каким именем обозначается главная функция?

3. Напишите код для получения доступа функциям в пространство имен std.

4. Перечислите названия составных (структурированных) типов данных.

5. Приведите пример инициализации переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

int перем1;

chary a;

signed char return;

7. Запишите оператор объявления поименованной константы sum, равной 23.5.

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

IV вариант

1. Кто считается автором языка программирования C?

2. Напишите код для получения доступа функциям в пространство имен std.

3. Как называются скобки, в которые заключается тело главной функции main?

4. Напишите названия целых типов данных в языке C++ (минимум 5 типов).

5. Приведите пример объявления переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

double c-5;

unsigned long _mas;

bool код_1;

7. Запишите оператор объявления поименованной константы des, равной целому числу 345.

 

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

V вариант

1. Кто считается автором языка программирования C++?

2. Назовите особенности алфавита языка программи­рования C++.

3. Напишите пример директивы препроцессору.

4. Напишите названия вещественных типов данных в языке C++ (минимум 2 типа).

5. Приведите пример инициализации переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

float c&1;

short int 5b;

int return;

7. Запишите оператор объявления поименованной константы max, равной 32536.

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

VI вариант

1. Какова структура программы на языке С++?

2. Назовите примеры расширений файлов, содержащих код программы на языке C++.

3. Какая инструкция  обеспечивает механизм завершения работы функции?

4. Напишите названия символьных и логического типов данных в языке C++ (минимум 3 типа).

5. Приведите пример объявления переменной.

6. Найдите ошибки в объявлении и инициализации переменных. Рядом напишите верный ответ или опишите ошибку.

char симв_1;

long k-6;

int main;

7. Запишите оператор объявления поименованной константы tri, равной целому числу 3.

 

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

___________________________________________

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Конспект занятия на тему "Запись выражений на языке С++. Операторы присваивания, ввода, вывода""

Методические разработки к Вашему уроку:

Получите новую специальность за 2 месяца

Маркетолог

Получите профессию

HR-менеджер

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 665 129 материалов в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 14.11.2017 1680
    • DOCX 147 кбайт
    • 12 скачиваний
    • Оцените материал:
  • Настоящий материал опубликован пользователем Серебрякова Людмила Валентиновна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    • На сайте: 8 лет и 6 месяцев
    • Подписчики: 0
    • Всего просмотров: 15363
    • Всего материалов: 10

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Секретарь-администратор

Секретарь-администратор (делопроизводитель)

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Теория и методика обучения информатике в начальной школе

Учитель информатики в начальной школе

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 97 человек из 34 регионов
  • Этот курс уже прошли 222 человека

Курс профессиональной переподготовки

Создание и обеспечение электронного архива с использованием информационно-коммуникационных технологий

Специалист по формированию электронного архива

600 ч.

9840 руб. 5600 руб.
Подать заявку О курсе
  • Сейчас обучается 30 человек из 22 регионов
  • Этот курс уже прошли 36 человек

Курс профессиональной переподготовки

Информатика: теория и методика преподавания в профессиональном образовании

Преподаватель информатики

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 49 человек из 22 регионов
  • Этот курс уже прошли 152 человека

Мини-курс

Методы решения нестандартных математических задач

3 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Этот курс уже прошли 12 человек

Мини-курс

Введение в искусственный интеллект

3 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 118 человек из 43 регионов
  • Этот курс уже прошли 46 человек

Мини-курс

Психология расстройств пищевого поведения

3 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 163 человека из 53 регионов
  • Этот курс уже прошли 96 человек