
21.11.2019, 22:34
|
|
Новичок
Регистрация: 26.03.2017
Сообщений: 8
С нами:
4806691
Репутация:
1
|
|
задача: запросить у пользователя два целых числа и вычислить диапазон, заданный этими числами (обязательно через while и только через него)
диапазон:
[CODE]
#include
using namespace std;
int main()
{
int a, b;
cout > a >> b;
while (a
так вот, если ввести допустим первым числом 5, а вторым 8 то на выходе получим 6 7 и 8, которая не является диапазоном.
понимаю, почему она выводится, но не понимаю, как это пофиксить.
вопрос тупой, но все же, если не трудно - помогите
|
|
|

21.11.2019, 22:37
|
|
Познавший АНТИЧАТ
Регистрация: 01.04.2018
Сообщений: 1,710
С нами:
4272230
Репутация:
183
|
|
[QUOTE="ddr2"]
задача: запросить у пользователя два целых числа и вычислить диапазон, заданный этими числами (обязательно через while и только через него)
диапазон:
[CODE]
#include
using namespace std;
int main()
{
int a, b;
cout > a >> b;
while (a
C++:
Код:
if
(
a
==
b
)
a
-=
1
;
Сообщение от ddr2
было бы все так просто, я бы сюда не отписывался, после того как мы получили 7 и вывели ее на экран - ide дальше продолжает цикл так как 7 не больше и не равняется 8, цикл продолжается - a (7)++ и сразу же сиаутом выводит результат (8)
я нуб в плюсах, но можешь попробовать ++a;
|
|
|

21.11.2019, 22:41
|
|
Новичок
Регистрация: 26.03.2017
Сообщений: 8
С нами:
4806691
Репутация:
1
|
|
[QUOTE="Musaigen"]
[CODE]
while (a
|
|
|

21.11.2019, 22:47
|
|
Постоянный
Регистрация: 25.06.2017
Сообщений: 707
С нами:
4676144
Репутация:
133
|
|
Сообщение от ddr2
было бы все так просто, я бы сюда не отписывался, после того как мы получили 7 и вывели ее на экран - ide дальше продолжает цикл так как 7 не больше и не равняется 8, цикл продолжается - a (7)++ и сразу же сиаутом выводит результат (8)
b - 1, не?
Если нужно включая границы,
while (a 6, 7, 8, 9
?
|
|
|

21.11.2019, 22:50
|
|
Новичок
Регистрация: 26.03.2017
Сообщений: 8
С нами:
4806691
Репутация:
1
|
|
Сообщение от Petr_Sergeevich
b - 1, не?
5, 8 => 6, 7, 8, 9
?
если а
|
|
|

22.11.2019, 00:05
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
В каком плане вычислить диапазон?
|
|
|

22.11.2019, 00:11
|
|
Новичок
Регистрация: 26.03.2017
Сообщений: 8
С нами:
4806691
Репутация:
1
|
|
в том плане что, пользователь задает два числа, например 5 и 8, следовательно диапазон обусловленный этими двумя числами - 6 и 7.
и границы, коими являются числа 5 и 8 выводить не нужно, нужен только один лишь диапазон.
|
|
|

22.11.2019, 02:03
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Ну на. Пробуй.
C++:
[CODE]
#include
using
namespace
std
;
int
main
(
)
{
int
min
,
max
,
a
,
b
;
min
=
max
=
a
=
b
=
0
;
cout
>
min
>>
max
;
if
(
min
>
max
)
{
cout
=
b
)
{
cout
|
|
|

22.11.2019, 02:27
|
|
Познавший АНТИЧАТ
Регистрация: 09.03.2013
Сообщений: 1,771
С нами:
6935121
Репутация:
233
|
|
@ddr2
C++:
[CODE]
while
(
++
a
|
|
|

22.11.2019, 14:21
|
|
Участник форума
Регистрация: 06.04.2018
Сообщений: 116
С нами:
4265571
Репутация:
68
|
|
1. Подскажите пожалуйста, что я не так сделал. Программа должна сделать следующее условие: Необходимо найти минимальный m1 и максимальный m2 нечётные элементы (если в массиве нет нечётных элементов, m1 и m2 считаются равными нулю), уменьшить все чётные элементы, значения которых попадают в интервал (m1; m2), на величину m1 и вывести изменённый массив. Например, для исходного массива из пяти элементов 30, 89, 27, 90, 68 программа должна вывести числа 3, 89, 27, 90, 41 (минимум и максимум равны 27 и 89, все чётные элементы из интервала (27; 89) уменьшены на 27).
Код:
[CODE]
#include
using namespace std;
void main()
{
setlocale(0, "");
int a[5], m1=INT_MAX, m2=INT_MIN, i=5;
for (int i = 0; i > a[i];
if (a[i] % 2 != 0 && a[i] > m2) m2 = a[i];
if (a[i] % 2 != 0 && a[i] m2&& a[i]
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|