"long" を使用せずに 2 つの大きな数の合計と乗算を行うにはどうすればよいですか?
それは配列である必要がありますか?だから..私が18 + 18の合計をしていると想像してください:
18
+15
array1 (1,8)
array2 (1,5)
colmn ..8+5=13 --> 3 および 1+1+1 (3 番目の '1' はオーバーフローによるもの) で列に移動する必要があります。
..だから、配列内のすべての要素に対してそれを行う必要があります
#include <stdio.h>
#include <conio.h>
#include <vectors.h>
int main()
{
int array1 ???
int array2 ???
printf("first number");
scanf();
printf("second number");
scanf();
printf("To Sum Enter 'S', to Multiply Enter 'M'");
scanf();
If(M){
//「長い」属性を使用する必要があるため、次のコードは間違っています...
while(i=1,i<LA2,i++){
while(j=1,j<LA1,j++){
A1[i]*A2[j]*10^(i+j-2);
}
}
}
If(S){
while(i=1,i<LA2,i++){
while(j=1,j<LA1,j++){
A1[i]*A2[j]*10 pow(i+j-2);
//「long」を使用できないため、pow() でこれを行うことはできません。つまり、配列内の要素ごとに実行し、結果を 3 番目の配列に提示する必要があります。
}
}
}
}