Нужна помощь! Даю максимальное количество баллов! Надо написать программу на языке си (с функцией main)
Создайте функцию, которая возвращает квадратный корень из числа (если он существует) или 0, если квадратный корень является
иррациональным числом.
Вот как это должны быть прототипировано: int ft_sqrt(int nb);
Ответы
Ответ:
Math.sqrt(x)
Объяснение:
Vx20,ma t h . s qr t ( x ) = vх = уникальный у > 0 такой, что у2 = х
Вот пример использования функции ft_sqrt() в функции main():
#include <stdio.h>
#include <math.h>
int ft_sqrt(int nb) {
if (nb < 0) {
return 0;
}
double sqrt_val = sqrt((double)nb);
if (sqrt_val == (int)sqrt_val) {
return (int)sqrt_val;
}
else {
return 0;
}
}
int main() {
int num1 = 16;
int num2 = 25;
int num3 = -4;
int num4 = 30;
printf("Square root of %d is %d\n", num1, ft_sqrt(num1));
printf("Square root of %d is %d\n", num2, ft_sqrt(num2));
printf("Square root of %d is %d\n", num3, ft_sqrt(num3));
printf("Square root of %d is %d\n", num4, ft_sqrt(num4));
return 0;
}
В функции main() создаются 4 переменные с различными значениями и передаются в функцию ft_sqrt(). Результат квадратного корня каждой переменной выводится на экран. В этом примере, квадратный корень из 16 и 25 является целым числом, поэтому функция возвращает их как целое число. Но квадратный корень из -4 и 30 является иррациональным, поэтому функция возвращает 0.