@NewRobot

Почему я пишу в переменой 1/3 и мне вибивает что она =0?

Почему я пишу в переменой 1/3 и мне вибивает что она =0? Я записую ее в типе флоат
#include <stdio.h>
#include <cmath>
int main() 
{

	float k = 1/3;


	printf("%f", k);

	return 0;
}
  • Вопрос задан
  • 193 просмотра
Пригласить эксперта
Ответы на вопрос 2
firedragon
@firedragon
Senior .NET developer
а так?
#include <stdio.h>
#include <cmath>
int main() 
{

  float k = 1/3.0;


  printf("%f", k);

  return 0;
}
Ответ написан
@FuckinSlave
Школоло
Потому что изначально 1/3 это тип int потом происходит приведение к float и теряется точность
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы