diablo
Мыслитель
(7039)
9 лет назад
>>преобразование double в float; double в int; int в float, возможна потеря данных
читай про типы данных и их преобразование
или замени все на double или float
float Sq(int a, int D)
{
double a; //здесь переопределение выше переменная a уже существует
l.k.Профи (584)
9 лет назад
спасибо, с преобразованием все решилось, разобралась наконец)
а с переопределением не совсем. если убрать double a;, то выдает, что использована неинициализированная локальная переменная а в строке S = 3.14*(a / 2)*(a / 2);
преобразование double в float; double в int; int в float, возможна потеря данных
и ошибку: переопределение формального параметра a
#include "stdio.h"
float Sq(int a)
{
double p;
p = 3.14*(a / 2)*(a / 2);
return p;
}
float Sq(int a, int D)
{
double a;
a = D / 1.4;
return a;
}
int main()
{
double a, D, S;
scanf_s("%f", &D);
S = 3.14*(a / 2)*(a / 2);
printf(" Ploshad ravna %f\n", S);
return 0;
}