Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
wizzzi
0 / 0 / 0
Регистрация: 21.06.2012
Сообщений: 12
1

Не могу понять, что делает "%="

07.07.2012, 11:35. Просмотров 514. Ответов 7
Метки нет (Все метки)

Не могу понять, что делает "%=". Вот написал не большую програмку, но так что то и не втыкаю.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include "stdafx.h"
#include <iostream>
using namespace std;
int main() 
{
   int a = 30, b = 10;
 
   b %= a;      
 
   cout  << "b %= a" << b << endl;
         
getchar();
}
a = -30, b = 10; Выдает 10;
a = -5, b = 10; Выдает 0;
a = -4, b = 10; Выдает 2;
a = -1, b = 10; Выдает 1;
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2012, 11:35
Ответы с готовыми решениями:

Не могу понять на что способен sort, и что делает его компаратор
Недавно мой знакомый рассказывал что-то про sort,говорил что с помощью него можно сортировать как...

Не могу понять что делает функциия
map&lt;char,int&gt; next; int &amp;get (char c) { if (!next.count(c)) next = -1; return next; }...

Объясните что именно делает "x%d, y%d: " или что это в даном коде
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; double rast(double x1, double y1,...

Не делает сортировку или не выводи,не могу понять что не так
Написать программу обработки файла типа запись, содержащую следующие пункты меню: «Создание»,...

Коллеги что же все такие делает "using namespace std"?
Я понял то что &quot;using namespace st&quot; мы вводим для того что бы не писать &quot;std::cout&lt;&lt;&quot; ну а...

7
dr.curse
396 / 352 / 36
Регистрация: 11.10.2010
Сообщений: 1,907
07.07.2012, 11:38 2
wizzzi,
C++
1
a%=b
эквивалентно
C++
1
a=a%b
1
yleart
60 / 45 / 12
Регистрация: 07.10.2011
Сообщений: 139
07.07.2012, 11:39 3
Остаток от деления b на a будет находится в b
Т.е. остаток от деления b = 10 на a = 30 будет 10, и ты сразу записываешь 10 в b
1
alsav22
5453 / 4848 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
07.07.2012, 12:04 4
Цитата Сообщение от wizzzi Посмотреть сообщение
Не могу понять, что делает "%=".
Это то же самое, что:
C++
1
 b = b % a;
Остаток от b/a присваивается b.
1
07.07.2012, 12:04
-=ЮрА=-
Заблокирован
Автор FAQ
07.07.2012, 12:10 5
wizzzi, всё очень просто % - возвращает остаток от целочисленного деления
К примеру 5 % 2 = 1 т.е. 5 - 2*2 = 1 Аналогично 11%10 = 1 (11 - 1*10 = 1)
Теперь наверное ты недоумеваешь, а тут
Цитата Сообщение от wizzzi Посмотреть сообщение
b %= a;
что на что делиться если структура операнда такая
Число %Число а у нас Число % присваинвание Число.
Что ж тут нет ничего сложного, просто использована инверсная запись, т.е.
и строка b %= a равносильна b = b % a
1
alsav22
5453 / 4848 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
07.07.2012, 12:18 6
Единственный момент, который здесь может быть не понятен - это когда a > b. В этом случае b%a равен b.
0
dr.curse
396 / 352 / 36
Регистрация: 11.10.2010
Сообщений: 1,907
07.07.2012, 13:00 7
Цитата Сообщение от alsav22 Посмотреть сообщение
Единственный момент, который здесь может быть не понятен - это когда a > b. В этом случае b%a равен b.
а чего тут непонять? этож обычный остаток
0
wizzzi
0 / 0 / 0
Регистрация: 21.06.2012
Сообщений: 12
07.07.2012, 17:33  [ТС] 8
Спасибо большое. Можно закрывать.
0
07.07.2012, 17:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.07.2012, 17:33

Что делает цикл "while(cin.getline(buf,l_buf))" ?
не могу понять,что делает цикл:while(cin.getline(buf,l_buf))-это по сути проверка на ввод строки?...

Что делает оператор "<<=" при записи в файл ?
template&lt;class T&gt; void textFile::toFile(T &amp;obj, string _filemarking) { ofstream...

Не могу понять в чем ошибка "Идентификатор не найден"
Ошибка в 10 и 18 строке, подскажите пожалуйста что не так... #include &lt;iostream&gt; #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru