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

Неправильно считает - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.63
МИШЛЯНДИЯ
0 / 0 / 0
Регистрация: 13.01.2011
Сообщений: 12
14.02.2011, 22:40     Неправильно считает #1
имеется простой код


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
#include <math.h>
#include <stdio.h>
#include <dos.h>
#include <stdlib.h>
 
int main(void)
{
double x;
printf("введи икс");
scanf ("%d",&x);
double x11=x*0.5;
double x12=x*1.5;
double x13=x*4/3;
double x14=x*1.25;
double x15=x*1.2;
 
double x21=x/0.5;
double x22=x/1.5;
double x23=x*3/4;
double x24=x/1.25;
double x25=x/1.2;
 
 
printf(" up     %d %d %d %d %d\n", x11,x12,x13,x14,x15);
printf(" down   %d %d %d %d %d\n", x21,x22,x23,x24,x25);
getchar();
getchar();
getchar();
return(0);
}
но почему он сцуко не правильно считает значения x11 и т.д.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dxdy
 Аватар для dxdy
97 / 97 / 5
Регистрация: 14.06.2010
Сообщений: 283
14.02.2011, 22:42     Неправильно считает #2
C++
1
2
printf(" up     %f %f %f %f %f\n", x11,x12,x13,x14,x15);
printf(" down   %f %f %f %f %f\n", x21,x22,x23,x24,x25);
МИШЛЯНДИЯ
0 / 0 / 0
Регистрация: 13.01.2011
Сообщений: 12
14.02.2011, 22:47  [ТС]     Неправильно считает #3
омг ты че...
%d !!!!

я поставил %f чисто по приколу и там такая трагедия развернулась.... уууу
dxdy
 Аватар для dxdy
97 / 97 / 5
Регистрация: 14.06.2010
Сообщений: 283
14.02.2011, 23:08     Неправильно считает #4
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
#include <stdio.h>
 
int main(void)
{
    double x;
    printf("Enter: ");
    scanf ("%lf", &x);
 
    double x11 = x*0.5;
    double x12 = x*1.5;
    double x13 =  x*4/3;
    double x14 =  x*1.25;
    double x15 =  x*1.2;
 
    double x21 =  x/0.5;
    double x22 =  x/1.5;
    double x23 =  x*3/4;
    double x24 =  x/1.25;
    double x25 =  x/1.2;
 
    printf(" up     %f %f %f %f %f\n", x11,x12,x13,x14,x15);
    printf(" down   %f %f %f %f %f\n", x21,x22,x23,x24,x25);
    
    return 0;
}
пользуйся float.....
MrOldZeppelin
1 / 1 / 0
Регистрация: 02.02.2011
Сообщений: 9
14.02.2011, 23:14     Неправильно считает #5
Не забывай, что в СИ при делении целочисленного числа, получается целочисленный ответ.
Т.е.
C++
1
5/9
и
C++
1
5.0/9
Будут иметь абсолютно разный результат
В первом случае 0, а во втором - нормальное число

Да и трагедия не развернулась, просто ты компилятор разными индексами запутал))
МИШЛЯНДИЯ
0 / 0 / 0
Регистрация: 13.01.2011
Сообщений: 12
14.02.2011, 23:14  [ТС]     Неправильно считает #6
Спс, проблема решена.
Yandex
Объявления
14.02.2011, 23:14     Неправильно считает
Ответ Создать тему
Опции темы

Текущее время: 23:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru