Вычисление квадратного коряня. - C (СИ)
Формулировка задачи:
Написал программу для вычисления квадратного корня, целые числа находит на ура, но с дробными проблема.
Я так понял, что проблема тут:
Помогите советом. И почему числа более 10000000 не вычисляются, программа просто останавливает работу, может объявить переменные s, a как double? Критика кода приветствуется.
#include <stdio.h> main() { float a, s; float w = 1; int p; scanf("%f", &s); for(a = s; a >= 0; a = a - w) { if(a*a==s) { printf("square root of %f is %.*f\n", s, p, a); } if(a == 0) { a = s; /* сомневаюсь насчёт этой строки, но мне нужно приравнять a к s, всякий раз, когда повторяется цикл, или же инициализация в цикле происходит каждый раз и без этой строки можно обойтись? */ w = w / 10; p = p + 1; } } int x = main(); }
if(a == 0) { a = s; w = w / 10; p = p + 1; }
Решение задачи: «Вычисление квадратного коряня.»
textual
Листинг программы
int x = main();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д