Работы по программированию

This commit is contained in:
IgorVolochay
2026-07-28 09:56:54 +03:00
parent b85155ff95
commit 8602b7e845
73 changed files with 4090 additions and 0 deletions
+53
View File
@@ -0,0 +1,53 @@
/*
29.Загадать случайным образом 100 чисел в диапазоне [-50;75].
Записать их в файл «binint.dat» - каждое число записывается в файл в 4-х байтном представлении.
Прочитать данные из файла «binint.dat», найти сумму чисел в нём.
*/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
const int MIN = -50;
const int MAX = 75;
const int AMOUNT = 100;
int* getRandomArray() {
srand(time(0));
int *array = malloc(sizeof(int)*AMOUNT);
for (int i = 0; i < AMOUNT;i++) {
array[i] = rand() % (abs(MIN) + abs(MAX) + 1) - abs(MIN);
}
return array;
}
void writeData(char* filename) {
FILE *file = fopen(filename, "wb");
int *array = getRandomArray();
for (int i = 0; i < AMOUNT; i++) {
fwrite(&array[i], sizeof(int), 1, file);
}
fclose(file);
}
int getSummaryNumbers(char* filename) {
FILE *file = fopen(filename, "rb");
int number, summary = 0;
while(fread(&number, sizeof(int), 1, file) == 1) {
summary += number;
}
fclose(file);
return summary;
}
int main() {
char *filename = "binint.dat";
writeData(filename);
printf("Summary: %d", getSummaryNumbers(filename));
return 0;
}