#include"stdio.h" #include"iostream.h" char zad1[600],zad2[600],zad3[1002]; char mn[53][503]; int dll[11]; int n,h; char dzial; void format() { int i,j; for (i=0; zad3[i]>='0'; i++) zad1[i]=zad3[i]; zad1[i]=0; dzial=zad3[i]; j=i+1; for (; zad3[j]; j++) zad2[j-i-1]=zad3[j]; zad2[j-i-1]=0; } int dlug(char *co) { int i; for (i=0; co[i]; i++); return i; } int k,l,max_d; void dodaj(char* co1, char* co2, int ll) { k=dlug(co1); l=dlug(co2); max_d=k>l?k:l; int wynik=0,t; int przenies=0; int c1,c2; for (t=0; t=k) c1=0; else c1=co1[k-t-1]-'0'; if (t>=l) c2=0; else c2=co2[l-t-1]-'0'; wynik=przenies+c1+c2; przenies=wynik/10; wynik=wynik%10; mn[ll][t]='0'+wynik; } if (przenies) mn[ll][t++]='1'; mn[ll][t]=0; }; void odejmij(char* co1, char* co2, int ll) { k=dlug(co1); l=dlug(co2); max_d=k>l?k:l; int wynik=0,t; int przenies=0; int c1,c2; for (t=0; t=k) c1=0; else c1=co1[k-t-1]-'0'; if (t>=l) c2=0; else c2=co2[l-t-1]-'0'; wynik=przenies+c1-c2; if (wynik<0) {przenies=-1; wynik+=10;} else przenies=0; wynik=wynik%10; mn[ll][t]='0'+wynik; } while (mn[ll][t-1]=='0') { if (t>0) t--; else break; } if (t==0) { mn[ll][0]='0'; t++; }; mn[ll][t]=0; }; void wyswietl_d() { int o; if (k>l+1) max_d=k; else max_d=l+1; int p=dlug(mn[0]); if (p>max_d) max_d=p; o=max_d; for (; o>0; o--) { if (o>k) printf(" "); else printf("%c",zad1[k-o]); } printf("\n"); for (o=max_d; o>0; o--) { if (o>l) { if(o-l==1) printf("+"); else printf(" "); } else printf("%c",zad2[l-o]); } printf("\n"); for (o=max_d; o>0; o--) { printf("-"); } printf("\n"); for (o=max_d; o>=0; o--) { if (o>p) printf(" "); else if (mn[0][o])printf("%c",mn[0][o]); } printf("\n"); printf("\n"); } void wyswietl_o() { int o; if (k>l+1) max_d=k; else max_d=l+1; int p=dlug(mn[0]); if (p>max_d) max_d=p; o=max_d; for (; o>0; o--) { if (o>k) printf(" "); else printf("%c",zad1[k-o]); } printf("\n"); for (o=max_d; o>0; o--) { if (o>l) { if(o-l==1) printf("-"); else printf(" "); } else printf("%c",zad2[l-o]); } printf("\n"); for (o=max_d; o>0; o--) { printf("-"); } printf("\n"); for (o=max_d; o>=0; o--) { if (o>p) printf(" "); else if (mn[0][o]) printf("%c",mn[0][o]); } printf("\n"); printf("\n"); } void dodaj_p(char* co1, char* co2, int il_przes) { l=dlug(co2); max_d=l+il_przes; int wynik=0,t; int przenies=0; int c1,c2; for (t=il_przes; t0; o--) { if (o>k) printf(" "); else printf("%c",zad1[k-o]); } printf("\n"); for (o=max_d; o>0; o--) { if (o>l) { if(o-l==1) printf("*"); else printf(" "); } else printf("%c",zad2[l-o]); } printf("\n"); if (dlug(zad2)!=1) { int por=dlug(zad2)+1; if (dlug(zad1)>por) por=dlug(zad1); for (o=max_d-por; o>0; o--) { printf(" "); } for (o=max_d; o>max_d-por; o--) { printf("-"); } printf("\n"); for (pp=0; pp0; o--) printf("-"); else {printf(" "); for (o=max_d-1; o>0; o--) printf("-");} printf("\n"); for (int bal=0; bal