Получить сумму положительных и сумму отрицательного членов последовательности - C (СИ)
Формулировка задачи:
Небходимо написать два варианта программы:* программа в которой ввод осуществляется из текстового файла и вывод выполняется в текстовый файл;* программа в которой ввод осуществляется из бинарного файла и вывод происходит в бинарный файл.* В бинарном файле данные хранятся во внутреннем представлены.
вот код програмы
Заданные действительные числа x1, x2 .... x25. Получить сумму положительных и сумму отрицательного членов этой последовательности.
#include <stdio.h> //#include<conio.h> #define N 25 int main(void) { int x, sumd=0 , sumv=0 , i, j[N]; int negativ = 0; //clrscr(); printf("Enter N\n"); for (i=0; i<N; i++) { scanf("%d", &x); if (x>=0) { j[i] = 0; sumd+=x; } else { sumv+=x; } } printf("Suma Dodatnih = %d\n", sumd); printf("Suma Vidyemnuh = %d\n", sumv); return 0; }
Решение задачи: «Получить сумму положительных и сумму отрицательного членов последовательности»
textual
Листинг программы
#include <stdio.h> #define SIZE 25 int main(void) { int i; float NegSum = 0, PosSum = 0, num; FILE *in = fopen("input.txt", "r"), *out = fopen("output.txt", "w"); for (i = 0; i < SIZE; i++) { fscanf(in, "%f", &num); if (num > 0) PosSum += num; else if (num < 0) NegSum += num; } fprintf(out, "%f %f", PosSum, NegSum); fclose(in); fclose(out); return 0; }
Объяснение кода листинга программы
В этом коде:
- #include
- это включает в себя файл стандартных библиотек, необходимых для работы с функциями ввода-вывода в C. - #define SIZE 25 - это определяет размер массива или последовательности чисел, которые будут обрабатываться в программе.
- int main(void) - это функция, которая запускает программу.
- int i; - это переменная, которая используется в цикле для подсчета количества чисел в последовательности.
- float NegSum = 0, PosSum = 0, num; - это объявляет три переменные: две для хранения суммы положительных и отрицательных чисел (PosSum и NegSum), и одну для хранения текущего числа (num).
- *FILE in = fopen(
input.txt
,r
),** - это открывает файл с данными для чтения. - *FILE out = fopen(
output.txt
,w
)** - это открывает файл для записи результатов. - for (i = 0; i < SIZE; i++) - это цикл, который проходит по каждому числу в последовательности.
- fscanf(in,
%f
, &num); - это считывает текущее число из файла и сохраняет его в переменной num. - if (num > 0) - это проверяет, является ли число положительным.
- PosSum += num; - это добавляет положительное число к общей сумме положительных чисел.
- else - это иначе, если число отрицательное.
- if (num < 0) - это проверяет, является ли число отрицательным.
- NegSum += num; - это добавляет отрицательное число к общей сумме отрицательных чисел.
- fprintf(out,
%f %f
, PosSum, NegSum); - это записывает суммы положительных и отрицательных чисел в файл. - fclose(in); - это закрывает файл с данными.
- fclose(out); - это закрывает файл с результатами.
- return 0; - это завершает программу.
В результате, программа считывает числа из файла
input.txt
, подсчитывает сумму положительных и отрицательных чисел, и записывает результаты в файлoutput.txt
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д