Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program bin_to_int;
- var c,m: string;
- var n,i,e,z: integer;
- g: boolean;
- function bin(x:string):integer;
- var ni,sk,summa,f,e: integer;
- begin
- f:=0;
- summa:=0;
- ni:=length(x);
- for i:= ni downto 1 do
- begin
- if(c[i]='0') then sk:=0 else sk:=1;
- inc(f);
- for e:= 1 to f-1 do
- begin
- sk:=sk*2; //pataisa skaitli f pakāpē.
- end;
- summa:=summa+sk; //pieskaita summai.
- end;
- bin:=summa;
- end;
- function dec(y:integer):string;
- var x,n,a: integer;
- ya: array [1..200] of char;
- f: string;
- begin
- n:=0;
- while y>0 do
- begin
- inc(n);
- ya[n]:=chr((y mod 2)+48);
- y:=y div 2;
- end;
- for a:= n downto 1 do
- begin
- write(ya[a]);
- end;
- end;
- begin
- repeat
- g:=true;
- writeln('ievadi kādu skaitli binarajā kodā!');
- readln(c); //nolasa datus
- n:=length(c);
- for e:= 1 to n do
- begin
- if (ord(c[e])-48>1) or (ord(c[e])-48<0) then
- begin
- writeln('Nav ievadīts binārais kods');
- g:=false;
- break;
- end;
- end;
- until g=true;
- repeat
- Writeln('Ievadiet otru skaitli binārajā kodā!');
- readln(m);
- g:=true;
- n:=length(m);
- for e:= 1 to n do
- begin
- if (ord(m[e])-48>1) or (ord(m[e])-48<0) then
- begin
- writeln('Nav ievadīts binārais kods');
- g:=false;
- break;
- end;
- end;
- until g=true;
- if (c<>'0') and (m<>'0') then
- begin
- z:=bin(c)+bin(m);
- writeln(c,'+',m,'=',dec(z),' jeb ',z);
- end;
- if (m='0') and (c='0') then writeln(c,'+',m,'=',m,' jeb ',m) else
- if (c='0') then begin write(c,'+',m,'=',m,' jeb '); c:=m; write(bin(c)); end else
- if (m='0') then writeln(c,'+',m,'=',c,' jeb ',bin(c));
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment