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

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

Войти
Регистрация
Восстановить пароль
 
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
#1

бред в результате - C++

23.03.2012, 16:18. Просмотров 584. Ответов 11
Метки нет (Все метки)

ничего не могу понять! нужно посчитать v, для этого просим ввести пользователя h и s, в результате получается какой-то бред!!! ввожу 3 и 2, должно получится 2 (3/3*2)! в результате выдает -24033. как так? что я не так сделал?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()
{
 int h,s,v;
 clrscr();
 printf("h");
 scanf("%d",h);
 printf("h/3=%d",h/3);
 printf("\ns");
 scanf("%d",s);
 v=h/3*s;
 printf("%d",v);
 getch();
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.03.2012, 16:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос бред в результате (C++):

Найти сумму двух чисел, полученных в результате сравнения чисел, полученных в результате вычисления выражений - C++
Даны действительные числа a, b, c. Найти: max(a+b, b+c) + min(a+c, b)

какой то бред! - C++
не могу понять что за цирк.. #include &lt;math.h&gt; #include &lt;iostream.h&gt; #include &lt;iomanip.h&gt; main() { double a,d,n; ...

Бред со счетом - C++
С начало грешил на свой компилятор, но после попробовал на Visual Studio 2010 и тот же результат. Какого черта в коде ниже, 264.088/11...

не использовать do/while ? бред ! - C++
меня возмутила статья http://www.cyberguru.ru/programming/cpp/cpp-programming-rules-page67.html в которой автор рекомендует вместо do...

Бред в крестиках ноликах - C++
Проблема. Написал цикдические крестики нолики ( в конце игры спрашивает хотите сыгарть еще или нет?) и после этого происходит какой то...

Бред при декомпиляции - C++
Всем привет!У меня такая проблема, при дэкомпиляции у меня получается всякий бред типо jddvb:56/df;v:j/:u19vghj незнаю что делать и из за...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
bunny
7 / 7 / 0
Регистрация: 18.03.2012
Сообщений: 77
23.03.2012, 16:22 #2
вместо инт напиши флот
Пример: как 1\3 может оказаться целое число?
1
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
23.03.2012, 16:24  [ТС] #3
ввел, теперь выдает ноль! и после h/3 и в общем результате!
0
Hemull
47 / 47 / 1
Регистрация: 12.03.2012
Сообщений: 108
23.03.2012, 16:56 #4
на плюсах правда
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
 
int main()
{
    double h=0.0,s=0.0,v;
    cout<<"h=";
    cin>>h;
    cout<<h/3<<endl;
    cout<<"s=";
    cin>>s;
    v=h/3*s;
    cout<<v<<endl;
    system("pause");
}
1
scriptobotic
1 / 1 / 1
Регистрация: 27.09.2011
Сообщений: 6
23.03.2012, 17:00 #5
По пробуй вместо %d поставить %f.
0
CLOH
5 / 5 / 3
Регистрация: 30.12.2010
Сообщений: 40
23.03.2012, 17:01 #6
Пропустил знак & в scanf. Нужно использовать float и спецификацию преобразования %f.

должно быть так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()
{
 float h,s,v;
 clrscr();
 printf("h");
 scanf("%f", &h);
 printf("h/3=%f",h/3);
 printf("\ns");
 scanf("%f", &s);
 v=h/3*s;
 printf("%f",v);
 getch();
}
2
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
23.03.2012, 17:07  [ТС] #7
спасибо. теперь мне нужно сделать то же самое с помощью функции, вот чт уже сть
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <conio.h>
#include <math.h>
float obem (float h, float s)
{
 float v;
 v=h/3*s;
 return v;
}
void main()
{   float visota,ploca;
    printf(" 2-obem konusa");
    printf("\nvedite visotu");
    scanf(" %f",&visota);
    printf("\nvvedite ploschad osnivania ");
    scanf(" %f",&ploca);
    printf("\nS= %d",obem(visota,ploca));/*узнаем объем конуса по формуле*/
getch();
}
а в результате ноль, что я не так делаю?
0
Hemull
47 / 47 / 1
Регистрация: 12.03.2012
Сообщений: 108
23.03.2012, 17:19 #8
printf("\nS= %f",obem(visota,ploca));/*узнаем объем конуса по формуле*/
1
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
23.03.2012, 17:21  [ТС] #9
сделал, но вот результат бред в результате вряд ли так должно быть...
0
Hemull
47 / 47 / 1
Регистрация: 12.03.2012
Сообщений: 108
23.03.2012, 17:27 #10
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <conio.h>
#include <math.h>
float obem (float h, float s)
{
    float v;
    v=h/3*s;
    return v;
}
void main()
{       float visota,ploca;
printf(" 2-obem konusa");
printf("\nvedite visotu");
scanf(" %f",&visota);
printf("\nvvedite ploschad osnivania ");
scanf(" %f",&ploca);
printf("\nS= %f",obem(visota,ploca));/*узнаем объем конуса по формуле*/
getch();
}
1
zss
Модератор
Эксперт С++
6382 / 5947 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
23.03.2012, 17:29 #11
В 17 строке все-таки замените %d на %f
И заработает
1
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
23.03.2012, 17:52  [ТС] #12
всем спасибо. все свободны
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2012, 17:52
Привет! Вот еще темы с ответами:

Почему выводит бред - C++
Имеется следующий код #include &lt;iostream&gt; #include &lt;locale&gt; using namespace std; const char* rename() {

проверка на IF что за бред - C++
/* Вариант 12 В одномерном массиве, состоящем из п вещественных элементов, вычислить: 1) номер максимального по модулю элемента...

Программа считает бред какой-то - C++
#include &lt;stdio.h&gt; int main() { int t,y,v,x,n=0; scanf(&quot;%d %d&quot;, &amp;x, &amp;y); while (x&lt;y) {...

Какой то бред с передачей указателя в функцию :-) - C++
Привет! Толи бред какой - то :D Толи у меня пробел в азах :rofl: Вот например: void MegaFunction( BYTE *data ); int...


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

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

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