Предмет: Информатика, автор: salammolekym

Дано натуральне число n та послідовність дійсних чисел a1, a2, …, an.
Знайти у заданій послідовності таке число, котре якомога наближене до
цілого числа.(На мові С)

Ответы

Автор ответа: KANIFAL
0

Ответ:

Для пошуку числа, яке найближче до цілого числа, можна використовувати такий підхід:

1. Створіть змінну найближче_ціле та початково присвойте їй перше число з послідовності a1.

2. Створіть змінну найближче_відстань та початково присвойте їй різницю між першим числом з послідовності a1 та його округленим значенням до найближчого цілого числа.

3. Пройдіться по всіх числах в послідовності a1, a2, ..., an.

4. Для кожного числа a, порівняйте різницю між ним та його округленим значенням до найближчого цілого числа з найближчою_відстанню.

5. Якщо різниця між поточним числом a та його округленим значенням менша за найближчу_відстань, оновіть найближчу_ціле відповідно до поточного числа a та оновіть найближчу_відстань відповідно до різниці.

6. Після проходу по всіх числах в послідовності, найближче_ціле буде містити число, яке найближче до цілого числа.

Отже, ось простий приклад коду на мові С, що реалізує цей підхід:

```c

#include <stdio.h>

#include <math.h>

int main() {

int n;

float a, closest_integer, closest_distance;

printf("Введіть кількість чисел у послідовності: ");

scanf("%d", &n);

printf("Введіть числа у послідовності:\n");

scanf("%f", &a);

closest_integer = a; // Перше число буде найближчим до цілого за умови що воно є найменшою відстанню

closest_distance = fabs(a - round(a)); // Різниця між першим числом та його округленим значенням до найближчого цілого числа

for (int i = 1; i < n; i++) {

scanf("%f", &a);

float distance = fabs(a - round(a)); // Різниця між поточним числом a та його округленим значенням до найближчого цілого числа

if (distance < closest_distance) {

closest_integer = a;

closest_distance = distance;

}

}

printf("Число, яке найближче до цілого: %f\n", closest_integer);

return 0;

}

```

Цей код спочатку запитує кількість чисел у послідовності та саму послідовність чисел від користувача. Потім він проходиться по кожному числі у послідовності та порівнює його з попереднім найближчим числом до цілого. На виході він виводить число, яке найближче до цілого числа.

Похожие вопросы
Предмет: Математика, автор: hello123poka321