Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- {$APPTYPE CONSOLE}
- uses
- Math;
- const
- MAXSIZE = 1000;
- type
- BigInt = record
- size: integer;
- number: array [1..MAXSIZE] of integer;
- end;
- var
- n, m, res: BigInt;
- procedure println(var x: BigInt);
- var
- i: integer;
- begin
- for i := x.size to MAXSIZE do
- write(x.number[i]);
- writeln;
- end;
- procedure cin(var x: BigInt);
- var
- i: integer;
- s: string;
- begin
- readln(s);
- x.size := MAXSIZE - length(s) + 1;
- for i := x.size to MAXSIZE do
- x.number[i] := ord(s[i - x.size + 1]) - 48;
- end;
- function add(n, m: BigInt): BigInt;
- var
- i, temp: integer;
- begin
- for i := MAXSIZE downto min(n.size, m.size) do begin
- temp := result.number[i] + n.number[i] + m.number[i];
- result.number[i] := temp mod 10;
- result.number[i - 1] := temp div 10;
- end;
- result.size := min(n.size, m.size);
- if (result.number[result.size - 1] > 0) then
- dec(result.size);
- end;
- function mult(n, m: BigInt): BigInt;
- var
- i, j, index, temp: integer;
- begin
- for i := 1 to MAXSIZE do
- result.number[i] := 0;
- for i := MAXSIZE downto n.size do
- for j := MAXSIZE downto m.size do begin
- index := i + j - MAXSIZE;
- temp := result.number[index] + n.number[i] * m.number[j];
- result.number[index] := temp mod 10;
- inc(result.number[index - 1], temp div 10);
- end;
- i := 1;
- while ((i < MAXSIZE) and (result.number[i] = 0)) do
- inc(i);
- result.size := i;
- end;
- begin
- assign(input, 'INPUT.TXT');
- reset(input);
- assign(output, 'OUTPUT.TXT');
- rewrite(output);
- cin(n);
- cin(m);
- res := mult(n, m);
- println(res);
- readln;
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement