Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
grovail
Сообщений: n/a
#1

Объясните, как работает программа - C++

23.12.2011, 20:44. Просмотров 394. Ответов 3
Метки нет (Все метки)

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


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 #include <iostream>
 #include <conio.h>
 using namespace std;
 void main()
 {
 int a, b, c, temp, kol_vo_1, kol_vo_2, kol_vo_3;
 int copy_a, copy_c, copy_b;
 cin>>a>>b>>c;
 kol_vo_1=0;
 kol_vo_2=0;
 kol_vo_3=0;
 copy_a=a;
 copy_b=b;
 copy_c=c;
 while (copy_a!=0) 
 {
 temp=copy_a%10;
 copy_a/=10;
 if (temp==1) kol_vo_1++;
 }
 while (copy_b!=0)
 {
 temp=copy_b%10;
 copy_b/=10;
 if (temp==1) kol_vo_2++;
 }
 while (copy_c!=0)
 {
 temp=copy_c%10;
 copy_c/=10;
 if (temp==1) kol_vo_3++;
 }
 if (kol_vo_1>kol_vo_2 && kol_vo_1>kol_vo_3) cout<<a; else
 if (kol_vo_2>kol_vo_3) cout<<b; else cout<<c;
 getch();
 }
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2011, 20:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Объясните, как работает программа (C++):

Объясните как работает программа - C++
Если символ: не пробел, не новая строка, не табуляция. То in присваивается no(все слова). Дальше я вообще не понял как программа работает....

объясните как работает программа - C++
A в степени K, как работает эта программа, за что отвечают m и s ? #include &quot;stdafx.h&quot; #include &quot;iostream&quot; using namespace std; ...

Объясните как работает программа - C++
Цель задачи была: Возведение X в 59 степень за самое малое количество шагов. 1. Ввод (X); 2. X2 = X*X; 3. X4 = X2*X2; ...

Объясните, как работает программа - C++
Поясните пожалуйста чайнику! Объясните плиз как работает программа, то есть что значит &quot;**&quot; и остальные строки плиз очень прошу!!!! ...

Объясните, как работает программа - C++
объясните как работает программа #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; bool Р(int n) { for (int i =...

Объясните как работает программа - C++
Задание звучит так: &quot;Разработать функцию, в которую передаются в качестве аргументов массив типа float и его размер. Функция должна...

3
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
23.12.2011, 21:02 #2
C++
1
temp = copy_a % 10;
в temp записывается последняя цифра числа.
например если у вас число 2347 то запишется 7.

C++
1
copy_a /= 10;
это тоже самое что и
C++
1
copy_a = copy_a /10;
Т.к. при делении используются целые числа то результат тоже будет целый. дробная часть отбрасывается. Поэтому если 2347 / 10 то результатом будет 234.

Далее проверяется является ли значение записанное в temp единицей.
Если да то
C++
1
kol_vo_1++;
увеличивает значение переменной kol_vo_1 на один.

далее цикл повторяется пока например copy_a не равно 0. А равно нулю оно будет когда будет разделено на 10 число состоящее только из одной цифры. наприме 2 / 10 = 0.
Данной условие говорит о том что вы проверили все имеющиеся цифры в числе и далее цикл повторять нет надобности
0
grovail
Сообщений: n/a
23.12.2011, 21:40 #3
а как понять что в temp единица, и если значение в temp ни разу не было единицей то оно остается нулем?
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
23.12.2011, 23:03 #4
Цитата Сообщение от grovail Посмотреть сообщение
а как понять что в temp единица
вот так:
Цитата Сообщение от grovail Посмотреть сообщение
C++
1
if (temp==1) { ... }
Цитата Сообщение от grovail Посмотреть сообщение
если значение в temp ни разу не было единицей то оно остается нулем?
temp равно результату вычесления
Цитата Сообщение от grovail Посмотреть сообщение
temp=copy_b%10;
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.12.2011, 23:03
Привет! Вот еще темы с ответами:

Объясните как работает программа - C++
Данная программа делает подсчёт символов. Помогите разобраться как она работает. Сижу смотрю - и ступор просто #include &lt;stdio.h&gt; ...

Объясните как работает эта программа - C++
#include &lt;stdio.h&gt; #include &lt;iostream&gt; enum { OUT, IN }; int main () { int c, nw, state; state = OUT;

Объясните пожалуйста как работает программа - C++
объясните пожалуйста код с момента появления &quot;bool fl&quot;, как это вообще работает? #include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include...

Объясните пожалуйста как работает программа!! - C++
#include&lt;iostream&gt; #include&lt;cstdlib&gt; using namespace std; int *Create(int n) { if(n&lt;=10000) { int *arr; arr...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
23.12.2011, 23:03
Ответ Создать тему
Опции темы

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