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

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

Войти
Регистрация
Восстановить пароль
 
 
dimasik12
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 8
#1

странный ввод чисел - C++

07.12.2009, 04:01. Просмотров 685. Ответов 15
Метки нет (Все метки)

В чем проблема, не пойму.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream.h> 
#include <conio.h>
#include <stdio.h>
void main()
{char a,b,c,v;
clrscr();
cout <<"  vvedite znachenia\n";
scanf ("%d %d %d",&a,&b,&c);
printf ("%d %d %d", a, b, c);
v = (2*a + 3*b - c)/(a + 2*b + c);
printf ("v= %d", v);
getch();
}
вводим значения, но они каки мто образом меняются(?!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2009, 04:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос странный ввод чисел (C++):

При введении больше 20 чисел программа выдает странный результат - C++
#include &lt;iostream&gt; #include &lt;locale&gt; using namespace std; double t1, t2; int main() { setlocale(LC_ALL,...

Запросить ввод нескольких чисел, и определить, сколько из этих чисел отрицательны - C++
Привет всем!Прошу помочь мне в решении задачи!Надо написать такую программу,чтобы она просила пользователя ввести несколько чисел и потом...

Ограничение на ввод чисел и проверка чисел - C++
решить квадратное уравнение. Сделала задачу, а преподаватель сказал, что это слишком легко и усложнила задачу, т.е. теперь нужна проверка...

Ввод чисел - C++
Столкнулся с такой проблемой. Когда заранее известно количество чисел, то все легко вводится с помощью массива, а как вводить числа, если...

ввод чисел - C++
Здраствуйте, граждане! Есть вопросик: Даны 2 числа: int a, float b. Если нетяжело, то покажите мне, идиоту, функцию чтобы можно было...

Ввод чисел - C++
Вводить с клавиатуры числа до тех пор, пока не будет нажата клавиша &lt;&lt;Esc&gt;&gt;. На экран вывести количество вводимых чисел.(С++)

15
niXman
Эксперт С++
3138 / 1450 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.12.2009, 04:06 #2
Цитата Сообщение от dimasik12 Посмотреть сообщение
char a,b,c,v;
так:
C
1
int a,b,c,v;
0
dimasik12
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 8
07.12.2009, 04:07  [ТС] #3
тип char обязательно(
0
niXman
Эксперт С++
3138 / 1450 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.12.2009, 04:08 #4
Цитата Сообщение от dimasik12 Посмотреть сообщение
тип char обязательно(
Почему? Зачем?

тип char может принимать значение от -128 до +128, и все!
0
dimasik12
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 8
07.12.2009, 04:11  [ТС] #5
условия задания таково
0
niXman
Эксперт С++
3138 / 1450 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.12.2009, 04:12 #6
Цитата Сообщение от dimasik12 Посмотреть сообщение
условия задания таково
я тебе ответил. чудес не бывает
Цитата Сообщение от niXman Посмотреть сообщение
тип char может принимать значение от -128 до +128, и все!
1
dimasik12
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 8
07.12.2009, 04:17  [ТС] #7
ну вот в этих пределах будет достаточно)

Добавлено через 4 минуты
scanf ("%d %d %d",&a,&b,&c);
в это строке что то не то(
0
niXman
Эксперт С++
3138 / 1450 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.12.2009, 04:18 #8
Цитата Сообщение от dimasik12 Посмотреть сообщение
v = (2*a + 3*b - c)/(a + 2*b + c);
Ты уверен, что значение, присваиваемое переменной v, не превышает этот диапазон?

Еше вот так поправь, если работа с отрицательными числами не предвидится. Диапазон вырастет от 0 до 255.
C
1
unsigned char a,b,c,v;
0
dimasik12
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 8
07.12.2009, 04:21  [ТС] #9
C
1
2
3
4
вводим одно
scanf ("%d %d %d",&a,&b,&c);
тут же следующей строкой выводим совершенно другое!( как так не пойму
printf ("%d %d %d", a, b, c);
0
niXman
Эксперт С++
3138 / 1450 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.12.2009, 04:27 #10
Потому что "%d" в scanf() подразумевает 32-битную переменную, а ты подсовываешь 8-битную.
0
dimasik12
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 8
07.12.2009, 04:31  [ТС] #11
а как тогда написать?

Не по теме:

не бейте больно, первый день за С сел)))

0
niXman
Эксперт С++
3138 / 1450 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.12.2009, 04:34 #12
Цитата Сообщение от dimasik12 Посмотреть сообщение
char a,b,c,v;
заменить на:
C
1
int a,b,c,v;
0
dimasik12
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 8
07.12.2009, 04:35  [ТС] #13
а если в Scanf вместо %d %с вставить.. ??
0
niXman
Эксперт С++
3138 / 1450 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.12.2009, 04:39 #14
Цитата Сообщение от dimasik12 Посмотреть сообщение
а если в Scanf вместо %d %с вставить.. ??
Тогда ты сможешь ввести только однозначное число. И получишь не то что ввел, а код введенного символа
1
Darky
Быдлокодер
507 / 294 / 45
Регистрация: 22.11.2009
Сообщений: 892
Завершенные тесты: 1
07.12.2009, 06:55 #15
Так еще можно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream.h> 
#include <conio.h>
#include <stdio.h>
void main()
{
char a,b,c,v;
clrscr();
cout <<"  vvedite znachenia\n";
cin>>a>>b>>c;
v = (2*a + 3*b - c)/(a + 2*b + c);
printf ("v= %d", v);
getch();
}
0
07.12.2009, 06:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2009, 06:55
Привет! Вот еще темы с ответами:

Ввод чисел - C++
Возможно избитый вопрос, но нигде не могу найти решения, такая задача: ... int a; cout&lt;&lt;&quot;a = &quot;; cin&gt;&gt;a; ... в случае если...

ввод больших чисел - C++
Подскажите как с помощью cin&gt;&gt; ввести большое число. Т.е. вводится число -8249387687698765197486594659746078497642542442345342 и мне...

Ввод чисел и обработка. - C++
доброго времени суток всем! не успел ещё разобраться с с++, а домашки уже накопил несданной... вобщем такая вот задача имеется 1 с...

Ввод чисел в массив - C++
Как сделать чтобы пользователь мог вводить числа в массив не по порядку? Допустим в массиве 10 элементов, доходим стрелочками до 5го и...


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

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

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