c/c++ programiranje eproma

Bez odgovora
tomislav91
Slika korisnika tomislav91
Offline
User
Član od: 13/12/2012

E sad, imam jedan, problem ili ne, sami odlucite. Treba programirati jedan eprom da radi tako sto uz pomoc ulaza(12) treba da led dioda swetli,recimo, ako je 7 za, znaci kao glasanje neko. E sad, treba napisati to u nekom programskom jeziku. Ja imam dve verzije, C i C++, od toga je C verzija, koja je meni lepsa, malo ne razumljiva sa tim engleskim nazivima varijabli, nije mi bas logicno sta koja radi, pa ako moze pomoc oko toga, i imam C program koji je jednostavniji, ali vizualno ne toliko okej. Sad me zanima ako neko zna kako da sad izaberem pravi program i ako treba izmeniti nesto.

#include<stdio.h>
#include<stdlib.h>

int main()
{
	printf("Majority voting, 12 members, EPROM .bin-file generator.\n\n");
	printf("A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 = verdict count\n\n");
	char a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,res,dummy;
	int des,jed;
	FILE *f;

	f=fopen("MV12bit.bin","w"); //file in write mode

	if (!f) return 1;
for(a12=0; a12<=1; a12++)
	for(a11=0; a11<=1; a11++)
		for(a10=0; a10<=1; a10++)
			for(a9=0; a9<=1; a9++)
				for(a8=0; a8<=1; a8++)
					for(a7=0; a7<=1; a7++)
						for(a6=0; a6<=1; a6++)
							for(a5=0; a5<=1; a5++)
								for(a4=0; a4<=1; a4++)
									for(a3=0; a3<=1; a3++)
										for(a2=0; a2<=1; a2++)
											for(a1=0; a1<=1; a1++)
												for(a0=0; a0<=1; a0++)
												{
													res = a12+a11+a10+a9+a8+a7+a6+a5+a4+a3+a2+a1+a0;
													des=res/10;
													jed=res%10;
													dummy = res>=7;
													printf("%i %i %i %i %i %i %i %i %i %i %i %i %i = %i %i %i\n",a12,a11,a10,a9,a8,a7,a6,a5,a4,a3,a2,a1,a0,dummy,des,jed);
													res = dummy | (des<<1) | (jed<<4);
													fwrite(&res,sizeof(char),1,f);
												}
											fclose(f);

											return 0;
}

i C++ kode

#include <iostream>
#include <string>
#include <fstream>  //ova biblioteka nam treba za ispis u fajlu

using namespace std;


int main ()
{
int a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11, rezultat;
string ispis;

//napravimo objekat za pisanje fajla
ofstream file;

//otvorimo binarni fajl
file.open("moucnosti.bin", ios::binary | ios::out | ios::app);

for (a0=0;a0<=1;a0++)
for (a1=0;a1<=1;a1++)
for (a2=0;a2<=1;a2++)
for (a3=0;a3<=1;a3++)
for (a4=0;a4<=1;a4++)
for (a5=0;a5<=1;a5++)
for (a6=0;a6<=1;a6++)
for (a7=0;a7<=1;a7++)
for (a8=0;a8<=1;a8++)
for (a9=0;a9<=1;a9++)
for(a10=0;a10<=1;a10++)
for(a11=0;a11<=1;a11++)
{
rezultat=a0+a1+a2+a3+a4+a5+a6+a7+a8+a9+a10+(2*a11) ;
if (rezultat>6)
ispis="01";
else
ispis="00";

cout<<ispis;
cout<<" ";

//upisemo podatke u fajl

file.write(ispis.c_str(),ispis.length());

}

//zatvorimo

file.close();

return 0;

}

0