/*
Nome: Mario
Cognome: Montanari
Classe: 3AIN
Data: 16/04/2025

leggere con un ciclo while tutti gli elementi del file e metterli in un array
*/

#include <stdio.h>

void leggiNumeri(FILE * file);
void creaFile(FILE * file);

int main(void) {
    FILE *file = fopen("file_70.bin", "rb");

    if (file != NULL) {
    	leggiNumeri(file);
    	fseek(file, 0, SEEK_SET);
    	printf("\n");
		creaFile(file);
		
		fclose(file);
    } else {
        perror("Error (source)");
    }

    return 0;
}

void leggiNumeri(FILE * file) {
	int numero;
		
	while (fread(&numero, sizeof(int), 1, file) == 1) {
		printf("%d ", numero);
	}
	printf("\n");
}

void creaFile(FILE * file) {
	FILE * out = fopen("out.bin", "wb");
	
	if (out != NULL) {
		int numero;
		
		while (fread(&numero, sizeof(int), 1, file) == 1) {
			if (numero % 2 == 0) {
				fwrite(&numero, sizeof(int), 1, out);
				printf("%d ", numero);
			}
		}
		
		fclose(out);
	} else {
		perror("Error (destination)");
	}
}