Удалить из нее все элементы, значение которых больше среднего арифметического - C (СИ)
Формулировка задачи:
Задание: Дана последовательность х1...х20. Удалить из нее все элементы, значение которых больше среднего арифметического.
int main() { FILE *fp; fp = fopen("new1.cpp", "w"); int i, j, n = 20, b[20], k = 0, t=0; float x, summa = 0, srednee = 0; for (i = 0; i < n; i++) { x = -5 + 0.001*rand(); printf("\n x=%5.2f ", x); fprintf(fp, "%5.2f", x); summa += x; } srednee = summa / n; printf("\n summa=%f", summa); printf("\n srednee=%f", srednee); fclose(fp); fp = fopen("new1.cpp", "r+"); for (i = 0; i < n; n++) { fscanf(fp, "%5.2f", "&x"); fseek(fp, i * 5, 0); if (x < srednee) { for (k = i; k < n-1; k++) { fseek(fp, (k + 1) * 5, 0); fscanf(fp, "%f", &x); fseek(fp, k * 5, 0); fprintf(fp, "%f", x); printf("\n x = %5.2f", x); }n--; i--; } } return 0; }
Решение задачи: «Удалить из нее все элементы, значение которых больше среднего арифметического»
textual
Листинг программы
#include <stdlib.h> #include <stdio.h> #include <time.h> enum { SIZE = 20 }; int main(int argc, char **argv) { FILE *f = fopen("new1.cpp", "w"); if (!f){ perror("File error"); exit(EXIT_FAILURE); } srand(time(0)); for (int i = 0; i < SIZE; ++i){ float x = -5 + 0.001 * rand(); printf("%5.2f\n", x); fprintf(f, "%5.2f ", x); } fclose(f); return EXIT_SUCCESS; }
Объяснение кода листинга программы
Код генерирует 20 случайных чисел в диапазоне от -5 до 0.05 и выводит их в консоль, записывает в файл new1.cpp
. Затем программа закрывает файл и возвращает 0, что означает успешное выполнение.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д