Created
April 3, 2014 19:47
-
-
Save noisy/9961533 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <iostream.h> | |
| /********************************************************************/ | |
| const int | |
| uH[2][2]={{1},{-1}}, //Zaczynamy deklarowac stopnie utlenienia | |
| uHe[2][1]={{0},{'\0'}}, | |
| uLi[2][1]={{1},{'\0'}}, //poszczegulnych pierwiastkach | |
| uBe[2][1]={{2},{'\0'}}, // w [0][0]- wpisujemy elektroujemnosc | |
| uB[2][1]={{3},{'\0'}}, // w [0][!0]-stopnie dodatnie | |
| uC[2][2]={{2,4},{-4}}, // w [1][]- stopnie ujemne | |
| uN[2][5]={{1,2,3,4,5},{-3}}, | |
| uO[2][2]={{'\0'},{-2,-1}}, | |
| uF[2][2]={{'\0'},{-1}}, | |
| uNe[2][1]={{0},{'\0'}}, | |
| uNa[2][1]={{1},{'\0'}}, | |
| uMg[2][1]={{2},{'\0'}}, | |
| uAl[2][1]={{3},{'\0'}}, | |
| uSi[2][2]={{2,4},{-4}}, | |
| uP[2][2]={{3,5},{-3}}, | |
| uS[2][2]={{4,6},{-2}}, | |
| uCl[2][5]={{1,3,5,6,7},{-1}}, | |
| uAr[2][1]={{0},{'\0'}}, | |
| uK[2][1]={{1},{'\0'}}, | |
| uCa[2][1]={{2},{'\0'}}, | |
| uSc[2][1]={{3},{'\0'}}, | |
| uTi[2][3]={{2,3,4}}, | |
| uV[2][5]={{1,2,3,4,5}}, | |
| uCr[2][3]={{2,3,6}}, | |
| uMn[2][5]={{2,3,4,6,7}}, | |
| uFe[2][4]={{2,3,4,6}}, | |
| uCo[2][2]={{2,3},{'\0'}}, | |
| uNi[2][3]={{1,2,3},{'\0'}}, | |
| uCu[2][2]={{1,2},{'\0'}}, | |
| uZn[2][1]={{2},{'\0'}}, | |
| uGa[2][1]={{3},{'\0'}}, | |
| uGe[2][2]={{2,4},{'\0'}}, | |
| uAs[2][2]={{3,5},{-3}}, | |
| uSe[2][2]={{4,6},{-2}}, | |
| uBr[2][4]={{1,4,5,7},{-1}}, | |
| uKr[2][3]={{0,2,4},{'\0'}}, | |
| uRb[2][1]={{1},{'\0'}}; | |
| float H=2.1, He=0, Li=1, Be=1.5, B=2, C=2.5, N=3, O=3.5, F=4, Ne=0, Na=0.9, Mg=1.2, Al=1.5, Si=1.8, | |
| P=2.1, S=2.5, Cl=3, Ar=0, K=0.9, Ca=1, Sc=1.3, Ti=1.5, V=1.7, Cr=1.9, Mn=1.7, Fe=1.9, Co=2, | |
| Ni=2, Cu=1.9, Zn= 1.6, Ga=1.6, Ge=1.8, As=2, Se=2.4, Br=2.8, Kr=0, Rb=0.8, Sr=1, Y=1.3, Zr=1.4, | |
| Nb=1.6, Mo=2, Tc=1.9, Ru=2.2, Pd=2.2, Ag=1.9, Cd=1.7, In=1.7, Sn=1.8, Sb=1.9, Te=2.1, I=2.5, | |
| Xe=0, Cs=0.7, Ba=0.9, La=1.1, Ce=1.1, Pr=1.1, Nd=1.2, Pm=1.2, Sm=1.2, Eu=1, Gd=1.1, Tb=1.2, | |
| Dy=1.2, Ho=1.2, Er=1.2, Tm=1.2, Yb=1.1, Lu=1.2, Hf=1.3, Ta=1.5, W=2, Re=1.9, Os=2.2, Ir=2.2, | |
| Pt=2.2, Au=2.4, Hg=1.9, Tl=1.8, Pb=1.8, Bi=1.9, Po=2, At=2.2, Rn=0, Fr=0.7, Ra=0.9, Ac=1.1, | |
| Th=1.1, Pa=1.5, U=1.7; | |
| //wkoñcu koniec wpisywania tych stopni | |
| /********************************************************************/ | |
| char rea[10], substrat[4][5][5],produkt[5][8]; | |
| int i=0, j=-1, k=0, l=0, m=0, n, o=-1, min1, min2, min3, min4, min5, | |
| u1,u2,u3,u4,u5,pierw[5][5]; | |
| float elektr[5][5]; | |
| main() | |
| { | |
| cout<<"Program ten oblicza reakcje redox. Wprowadz reakcje: \n"; | |
| cin>>rea; | |
| do{if (rea[i]=='+') | |
| {m++;j=0;k=0;i++;} | |
| if ((rea[i]=='A')||(rea[i]=='B')||(rea[i]=='C')||(rea[i]=='D')||(rea[i]=='E')||(rea[i]=='F')||(rea[i]=='G')||(rea[i]=='H')||(rea[i]=='I')||(rea[i]=='J')||(rea[i]=='K')||(rea[i]=='L')||(rea[i]=='M')||(rea[i]=='N')||(rea[i]=='O')||(rea[i]=='P')||(rea[i]=='R')||(rea[i]=='S')||(rea[i]=='T')||(rea[i]=='U')||(rea[i]=='W')||(rea[i]=='X')||(rea[i]=='Y')||(rea[i]=='Z')) | |
| {j++;k=0;} | |
| substrat[m][j][k]=rea[i]; | |
| i++;k++; | |
| } | |
| while (rea[i]!='\0'); | |
| /*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ | |
| if (rea=="wodor"){cout<<"\nPIERD!!";} | |
| do{ | |
| o++; | |
| if (substrat[n][o]=="H\0H"){elektr[n][o]=H;H=o;} | |
| else {if (substrat[n][o]=="He"){elektr[n][o]=He;He=o;} | |
| else {if (substrat[n][o]=="Li"){elektr[n][o]=Li;Li=o;} | |
| else {if (substrat[n][o]=="Be"){elektr[n][o]=Be;Be=o;} | |
| else {if (substrat[n][o]=="B"){elektr[n][o]=B;B=o;} | |
| else {if (substrat[n][o]=="C"){elektr[n][o]=C;C=o;} | |
| else {if (substrat[n][o]=="N"){elektr[n][o]=N;N=o;} | |
| else {if (substrat[n][o]=="O"){elektr[n][o]=O;O=o;} | |
| else {if (substrat[n][o]=="F"){elektr[n][o]=F;F=o;} | |
| else {if (substrat[n][o]=="Ne"){elektr[n][o]=Ne;Ne=o;} | |
| else {if (substrat[n][o]=="Na"){elektr[n][o]=Na;Na=o;} | |
| else {if (substrat[n][o]=="Mg"){elektr[n][o]=Mg;Mg=o;} | |
| else {if (substrat[n][o]=="Al"){elektr[n][o]=Al;Al=o;} | |
| else {if (substrat[n][o]=="Si"){elektr[n][o]=Si;Si=o;} | |
| else {if (substrat[n][o]=="P"){elektr[n][o]=P;P=o;} | |
| else {if (substrat[n][o]=="S"){elektr[n][o]=S;S=o;} | |
| else {if (substrat[n][o]=="Cl"){elektr[n][o]=Cl;Cl=o;} | |
| else {if (substrat[n][o]=="Ar"){elektr[n][o]=Ar;Ar=o;} | |
| else {if (substrat[n][o]=="K"){elektr[n][o]=K;K=o;} | |
| else {if (substrat[n][o]=="Ca"){elektr[n][o]=Ca;Ca=o;} | |
| else {if (substrat[n][o]=="Sc"){elektr[n][o]=Sc;Sc=o;} | |
| else {if (substrat[n][o]=="Ti"){elektr[n][o]=Ti;Ti=o;} | |
| else {if (substrat[n][o]=="V"){elektr[n][o]=V;V=o;} | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| while (substrat[n][o]=='\0'); | |
| /****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ | |
| int L1=0, L2=0, L3=0, L4=0, L5=0; | |
| do{ | |
| u1=pierw[min1][L1]; | |
| u2=pierw[min2][L2]; | |
| u3=pierw[min3][L3]; | |
| u4=pierw[min4][L4]; | |
| u5=pierw[min5][L5]; | |
| L1++; | |
| if(pierw[min1][L1]=='\0'){L1=0;L2++;} | |
| else {if(pierw[min2][L2]=='\0'){L2=0;L3++;} | |
| else {if(pierw[min3][L3]=='\0'){L3=0;L4++;} | |
| else {if(pierw[min4][L4]=='\0'){L4=0;L5++;} | |
| } | |
| } | |
| } | |
| } | |
| while(u1+u2+u3+u4+u5!=0); | |
| /*********************************************************************************/ | |
| cout<<substrat[0][0]<<endl; | |
| cout<<substrat[0][1]<<endl; | |
| cout<<substrat[0][2]<<endl; | |
| cout<<substrat[0][3]<<endl; | |
| cout<<substrat[1][0]<<endl; | |
| cout<<substrat[1][1]<<endl; | |
| cout<<substrat[1][2]<<endl; | |
| cout<<substrat[1][3]<<endl; | |
| cout<<substrat[1][4]; | |
| getchar(); | |
| getchar(); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment