Операции присваивания

Операция Результат Ограничения Примеры выражений
х=у у приводится к типу х; х получает значение у х, у могут быть любого типа, но не массивом int a, b=2; char c='A' (код 65) float d=2.2; a=b (результат=2) a=c/2 (результат=32) а=d (результат=2)
х <оп> =у оп – знак операции (+, –, *, /, %, <<,>>,&, |, ^) х оп у приводится к типу х, х получает значение х оп у. х, у могут быть любого типа, но не массивом или структурой k+=2 (k=k+2) k*=2 (k=k*2) k>>=2 (k=k>>+2) k&=2 (k=k&2)

Таблица приоритетов

Приоритет Знак операции Тип операции Порядок выполнения операций одного приоритета
( ) [ ] . - > первичные (вызов функции, выбор элемента массива, доступ к полю структуры) слева направо
- ~ ! * ++ -- & (тип) sizeof унарные слева направо
* / % мультипликативные слева направо
+ - аддитивные слева направо
<< >> сдвиг слева направо
< <= > >= отношение (неравенство) слева направо
= != сравнения на равенство слева направо
& побитовое И слева направо
^ побитовое исключающее ИЛИ слева направо
| побитовое ИЛИ слева направо
&& логическое И слева направо
|| логическое ИЛИ слева направо
? : условие слева направо
= *= /= %= += -= <<= >>= присваивание слева направо
, запятая слева направо

Пример 1.

/*Программа демонстрирует работу с арифметическими операциями и операциями присваивания*/

#include <stdio.h>

void main() {

int a=5, b=2, vych, znak,

i=1, in, d=4, de, v=7,iv, q=3,dq,

t, r=8, n=41, k=28;

float c=2.7, sum, pro, del, ost, p=6.5, m=12.4;

 

/*Аддитивные операции*/

sum=a+c; /*сложение*/

printf("%2.1f\n",sum);

vych=a-b; /*вычитание*/

printf("%d\n\n",vych);

 

/*Мультипликативные операции*/

pro=a*c; /*произведение*/

printf("%3.2f\n",pro);

del=a/b; /*частное от деления*/

printf("%.2f\n",del);

ost=a%b; /*остаток от деления*/

printf("%1.2f\n",ost);

znak=-a; /*изменение знака*/

printf("%d\n\n",znak);

 

/*Операции увеличения (инкремент) и уменьшения (декремент)*/

in=++i; /*i увеличивается перед использованием*/

printf("%d %d\n",in,i);

de=--d; /*d уменьшается перед использованием*/

printf("%d %d\n",de,d);

iv=v++; /*после использования v увеличивается*/

printf("%d %d\n",iv,v);

dq=q--; /*после использования q уменьшается*/

printf("%d %d\n\n",dq,q);

 

/*Операции присваивания*/

t=a; /*t получает значение a*/ printf("%d\n",t);

r+=2; /*эквивалентно r=r+2*/ printf("%d\n",r);

p-=2; /*эквивалентно p=p-2*/ printf("%f\n",p);

n*=3; /*эквивалентно n=n*3*/ printf("%d\n",n);

m/=4; /*эквивалентно m=m/4*/ printf("%.3f\n",m);

k%=5; /*эквивалентно k=k%5*/ printf("%d\n",k);

}

 

 

Задания

1.Наберите код программы из Примера 1. Сохраните код в файл с именем aropoppr.cpp. Выполните компиляцию и запуск программы.

2.Написать программу вычисления стоимости покупки, состоящей из нескольких тетрадей и карандашей. Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным штифтом). Используйте форматированный ввод-вывод данных. Добавьте комментарии к программному коду.

Вычисление стоимости покупки.

Введите исходные данные:

Цена тетради (руб.) -> 10.75

Количество тетрадей -> 5

Цена карандаша (руб.) -> 8.8

Количество карандашей -> 2

 

Стоимость покупки: 71.35 руб.

3.Написать программу вычисления площади полной поверхности прямоугольного параллелепипеда. Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным штифтом). Используйте стандартные потоки ввода-вывода данных. Добавьте комментарии к программному коду.

Вычисление площади прямоугольного параллелепипеда.

Введите исходные данные:

Длина (см) -> 9

Ширина (см) -> 7.5

Высота (см) -> 5

 

Площадь поверхности: 300.00 кв. см

 

Домашние задания

1.Написать программу, вычисляющую скорость, с которой бегун пробежал дистанцию. Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным штифтом). Используйте стандартные потоки ввода-вывода данных. Добавьте комментарии к программному коду.

Вычисление скорости бегуна.

Введите длину дистанции (метров)-> 1000

Введите время (с) -> 195

 

Дистанция (км): 1.0

Время (мин, с): 3 мин 15 с

Вы бежали со скоростью 0.3077 км/мин

2. Индивидуальное задание. Номер варианта определяется по журналу. В данном задании используйте форматированный ввод-вывод данных. Добавьте комментарии к программному коду.

Варианты индивидуального задания

Задание
1. Дана длина ребра куба. Найти объем куба, площадь его боковой поверхности и объем шара, вписанного в этот куб.
2. Составить программу, отгадывающую натуральное четное число, загаданное пользователем. Ниже представлен рекомендуемый вариант диалога во время работы программы. Загадайте натуральное четное число Прибавьте к нему 4 Уменьшите на 6 Поделите на 2 Что у Вас получилось? Вы загадали число 8!!!
3. Продаются товары двух видов. Запросить с клавиатуры для каждого вида товаров цену, количество в начале рабочего дня и количество проданного товара. Вывести стоимость всех товаров в начале рабочего дня и стоимость всех непроданных товаров.
4. Продаются товары двух видов. Запросить с клавиатуры для каждого вида товаров цену, количество в начале рабочего дня и количество проданного товара. Вывести величину максимальной выручки, которую можно получить, и величину выручки, полученной на самом деле.
5. Покупаются продукты двух видов. Запросить с клавиатуры количество денег у покупателя, цену продуктов каждого вида и количество продуктов каждого вида, приобретенное покупателем. Вывести на экран, сколько денег осталось у покупателя.
6. Сколько Мбайт информации содержит сообщение, записанное с помощью N-символьного алфавита (N = 2, 8, 16, 32)? В сообщении S страниц, на каждой странице K строк по T символов.
7. Файл содержит точечную черно-белую фотографию 10´15 см, каждый квадратный сантиметр содержит 300 точек, используется палитра из 8 цветовых градаций. Каков общий информационный объем файла в килобайтах?
8. Даны R – радиус основания и H – высота цилиндра. Составьте программу вычисления объема и площади полной поверхности цилиндра.
9. Продав квартиру, вы получили 52 000 долларов и положили их в банк. Банк начисляет 1% в первый месяц, а каждый следующий – тоже 1%, но уже с общей суммы с учетом начисленных процентов. Сколько денег будет в банке на вашем счету через год?
10. Допустим, вы получили наследство 1 000 000 долларов и хотите красиво пожить. После долгих раздумий вы решаете, что будете жить на 8000 долларов в месяц. На сколько лет и месяцев вам хватит наследства?
11. Идет k-я секунда суток. Определить, сколько полных часов (Н) и полных минут (М) прошло к этому моменту (Например, Н=3 и М=40, если k=13 237=3*3600+40*60+37).
12. Даны три сопротивления R1, R2 и R3, которые соединены параллельно. Найдите сопротивление соединения. Ответ дать с точность до трех знаков после запятой.
13. Сумма первых n элементов арифметической прогрессии вычисляется по формуле Sn = (a1 + an) · n/2. Даны a1, d, m, n. Составьте программу вычисления суммы членов арифметической прогрессии, начиная с номера m до n включительно (m<n).
14. Полторы кошки за полтора часа съедают полторы мышки. Сколько мышек съедят x кошек за y часов?
15. Дана величина I, выражающая информационный объем в битах. Составьте программу, которая переводит эту величину в Мегабайты, Килобайты, байты.
16. Смешано v1 литров воды температуры t1 c v2 литрами воды температуры t2. Найти объем и температуру образовавшейся смеси. Потерями энергии пренебречь.
17. Известна длина окружности с. Найти площадь круга, ограниченного этой окружностью. Ответ дать с точностью до 4-х знаков после запятой.
18. Найти произведение цифр заданного четырехзначного числа.
19. Дано действительное число х. Используя только сложение, вычитание и умножение, вычислите значение выражения за 8 операций: 2x4– 3x3+ 4x2– 5x + 6.
20. Найти сумму цифр заданного пятизначного числа.
21. Дано вещественное число. Составьте программу, печатающую цифру разряда десятых данного числа.
22. Дано трехзначное число. Составьте программу вывода на экран числа полученного перестановкой цифр сотен и единиц данного числа. Например, из числа 123 получится 321.
23. Дано трехзначное число. В нем зачеркнули цифру сотен и приписали ее в конце справа. Составьте программу, печатающую полученное число. Например, из числа 123 получится 231.
24. Слили два раствора кислоты: первый раствор массой m1 и концентрацией k1, второй массой m2 и концентрацией k2. Составьте программу определения массы и концентрации смеси.
25. Собственная скорость катера v1 км/ч, скорость течения реки v2 км/ч. Катер прошел по озеру s1 км и s2 км по реке, впадающей в это озеро. Составьте программу нахождения всего времени движения катера. Ответ дайте с точностью до двух цифр после запятой.
26. Из цилиндра с высотой h и радиусом основания r вырезали конус с такой же высотой и таким же радиусом основания. Найдите объем оставшейся части.
27. В течение года цена на товар выросла трижды: на Р1%, на Р2% и на Р3%. На сколько процентов по сравнению с началом года выросла цена на товар?
28. От круга радиуса R отрезали сектор с дугой a градусов (0o<a<360o). Найдите объем конуса, в который свернули сектор.








Дата добавления: 2015-02-16; просмотров: 695;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.01 сек.