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

Как правильно выводить переменную типа double на экран? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 28, средняя оценка - 4.89
fire-one
0 / 0 / 0
Регистрация: 20.07.2009
Сообщений: 92
25.10.2006, 22:39     Как правильно выводить переменную типа double на экран? #1
Помогите, плиз, как правильно выводить переменную типа double на экран ??
У меня выводится какое-то непонятное число 292057083 вместо примерно 51,хххх..
По-моему проблема в строчке printf ("Skal %u",Skal);
Но что именно не так ?
Код всей программы:
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 <IOSTREAM.H>
#include <STDIO.H>
#include <CONIO.H>
#include <MATH.H>
#define pi 3.1415926
void main()
{
  double x1,y1,x2,y2,yg,Skal;
  printf ("%s","Vvedite x1:");
  scanf ("%u",&amp;x1);
  
  printf ("%s","Vvedite y1:");
  scanf ("%u",&amp;y1);
  printf ("%s","Vvedite x2:");
  scanf ("%u",&amp;x2);
  printf ("%s","Vvedite y2");
  scanf ("%u",&amp;y2);
  printf ("%s","Vvedite ygol mejdu vektorami:");
  scanf ("%u",&amp;yg);
  
  Skal=cos(pi*yg/360) * sqrt(x1*x1 + y1*y1) * sqrt(x2*x2 + y2*y2);
  printf ("Skal %u",Skal);
  
  scanf ("%u",&amp;y2);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2006, 22:39     Как правильно выводить переменную типа double на экран?
Посмотрите здесь:

C++ Как преобразовать дробную часть числа типа double в int
C++ В массив типа double записываю целые числа (типа int), но ошибка не вылазиет!
C++ Как правильно число в ячейке типа string, перекинуть в ячейку в тип double ?
C++ функция принимает два параметра типа double и возвращает значение типа double
C++ Запись информации из вектора типа string в вектор типа double
Как записать значение типа double в char? C++
Pthread.h, как вернуть из потоковой функции значение типа double? C++
C++ Аргумент типа double несовместим с параметром типа double
C++ Вывод числа типа double как есть
C++ Проверить, является ли число, записанное в переменную типа Double, иррациональным
C++ Как считать числа типа double с запятой вместо точки
Аргумент типа double несовместим с параметром типа double* C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
bazile
57 / 33 / 19
Регистрация: 15.03.2007
Сообщений: 6,911
26.10.2006, 14:27     Как правильно выводить переменную типа double на экран? #2
Ты неправильный тип указываешь для printf. %u означает - вывести целочисленное безнаковое значение - то есть int. Для вывода чисел с плавающей точкой надо использовать формат %f.
Смотри также: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_printf_type_field_characters.asp?FRAME=true#_crt_table_r..3 printf Type Field Characters, http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_format_specification_fields_.2d_.printf_and_wprintf_functions.asp?frame=true Format Specification Fields: printf and wprintf Functions.
Silver
Сообщений: n/a
27.10.2006, 13:22     Как правильно выводить переменную типа double на экран? #3
И еще одно маленькое замечание.
Используй для расчетов данные одного типа.
Если double, то и вводимые числа пусть будут double, а не int.
Тем более беззнаковый.
Yandex
Объявления
27.10.2006, 13:22     Как правильно выводить переменную типа double на экран?
Ответ Создать тему
Опции темы

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