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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
TrueGamer
0 / 0 / 0
Регистрация: 07.04.2014
Сообщений: 7
#1

Warning C4244: =: преобразование "double" в "float", возможна потеря данных - C++

07.04.2014, 12:41. Просмотров 1951. Ответов 6
Метки нет (Все метки)

Возникла проблема
Решаю лабу, написал код, выдает ошибку (warning C4244: =: преобразование "double" в "float", возможна потеря данных)
Лабу срочно сдать надо. Что делать?
Помогите срочно!!!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <iostream>
#include "conio.h"
#include "math.h"
using namespace std;
 
int main()
{ 
    float z1, z2, x, a, b;
    x=3.14/180.0;
    cout<<"Vvedite gradus ugla A\n";
    cin>>a;
    cout<<"Vvedite grsdus ugla B\n";
    cin>>b;
    z1=pow((cos(a)-cos(b)),2.0)-pow((sin(a)-sin(b)),2.0); 
    z2=(-4)*pow((sin((a-b)/2.0)),2.0)*cos(a+b);
    cout<<"Pervaya funkciya = \n"<<z1;
    cout<<"Vtoraya funkciya = \n"<<z2;
    _getch();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2014, 12:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Warning C4244: =: преобразование "double" в "float", возможна потеря данных (C++):

Warning C4244: return: преобразование "double" в "float", возможна потеря данных - C++
помогите разобраться. пишу программу в функции выдает ошибку в строке с return &quot;warning C4244: return: преобразование &quot;double&quot; в &quot;float&quot;,...

warning C4244: =: преобразование "double" в "float", возможна потеря данных - C++
Вот код. Работало, теперь не работает. Не пойму в чём дело. #include&lt;iostream&gt; #include&lt;stdlib.h&gt; #include&lt;time.h&gt; ...

Warning C4244: инициализация: преобразование "__int64" в "int", возможна потеря данных - C++
Что за предупреждение вылезает? Как исправить? (16 строка): warning C4244: инициализация: преобразование &quot;__int64&quot; в &quot;int&quot;, возможна...

warning C4244: =: преобразование "double" в "float - C++
Объясните нубу пожалуйста, почему выкидывает это предупреждение ? warning C4244: =: преобразование &quot;double&quot; в &quot;float&quot;, возможна потеря...

Ошибка преобразование "time_t" в "unsigned int", возможна потеря данных - C++
Добрый день,по условию задачи: &quot;найти сумму элементов,расположенных на главной и побочной диагонали квадратной матрицы&quot; у меня вышла вот...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно" - C++
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;, &quot;жарко&quot;, &quot;холодно&quot;, &quot;очень холодно&quot;. Я так...

6
SatanaXIII
Супер-модератор
Эксперт С++
5640 / 2675 / 252
Регистрация: 01.11.2011
Сообщений: 6,571
Завершенные тесты: 1
07.04.2014, 12:45 #2
Объявите как double:
C++
9
double z1, z2, x, a, b;
1
nikname755
0 / 0 / 1
Регистрация: 06.04.2014
Сообщений: 5
07.04.2014, 12:46 #3
Не ошибку, а предупреждение. Сделай приведение данных, а лучше не пытайся во float double пихать (это как голову в рукав).
0
newbie666
Заблокирован
07.04.2014, 12:46 #4
Цитата Сообщение от TrueGamer Посмотреть сообщение
выдает ошибку
это не ошибка а предупреждение, читать что ли не умеешь?

Цитата Сообщение от TrueGamer Посмотреть сообщение
float z1, z2, x, a, b;
не хочешь видеть эту надпись? ну как вариант напиши double z1, z2, x, a, b;
1
TrueGamer
0 / 0 / 0
Регистрация: 07.04.2014
Сообщений: 7
07.04.2014, 12:51  [ТС] #5
Упустил момент перевода градусов в радианы, исправлю и посмотрю
Спасибо за ответ

Добавлено через 3 минуты
Ошибся, пишу только неделю, он не запускал проггу(
Вот исправил, помогло
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
#include "stdafx.h"
#include <iostream>
#include "conio.h"
#include "math.h"
using namespace std;
 
int main()
{ 
    double z1, z2, x, a, b, a1, b1;
    x=3.14/180.0;
    cout<<"Vvedite gradus ugla A\n";
    cin>>a1;
    a=x*a1;
    cout<<"Vvedite grsdus ugla B\n";
    cin>>b1;
    b=x*b1;
    z1=pow((cos(a)-cos(b)),2.0)-pow((sin(a)-sin(b)),2.0); 
    z2=(-4)*pow((sin((a-b)/2.0)),2.0)*cos(a+b);
    cout<<"Pervaya funkciya = "<<z1;
    cout<<endl;
    cout<<"Vtoraya funkciya = "<<z2;
    _getch();
    return 0;
}
0
newbie666
Заблокирован
07.04.2014, 13:02 #6
Цитата Сообщение от TrueGamer Посмотреть сообщение
cout<<"Vvedite grsdus ugla B\n";
у тебя тут орфографическая ошибка
0
TrueGamer
0 / 0 / 0
Регистрация: 07.04.2014
Сообщений: 7
07.04.2014, 13:07  [ТС] #7
Хахаха, да заметил, хоть не успел отправить на проверку)
0
07.04.2014, 13:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2014, 13:07
Привет! Вот еще темы с ответами:

Необъявленный идентификатор, преобразование "int" в "float" - C++
#define _CRT_SECURE_NO_WARNINGS #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #define N 50 #define M 50 int n,m,i,j,k,r; void...

Ошибка усечение из "double" к "float" - C++
Обясните пожалуйста что это за ошибка усечение из &quot;double&quot; к &quot;float&quot; никак не могу понять

Определить тип данных "Запись", имеющий поля "Фамилия", "Пол", "Зарплата" - C++
определить тип данных запись имеющий поля фамилия пол зарплата. определить массив из 10 записей. в программе ввести в массив данные и...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование) - C++
Разработать программу с использованием наследования классов, реализующую классы: − воин; − пехотинец(винтовка); − матрос(кортик). ...


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

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

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