input dosyasından aldığı 2 tane sonsuz uzunluktaki sayiyi çarpar umarım işinize yarar. stack ve çift boyutlu liste kullanılmıştır
import java.io.*;
import java.util.*;
import com.boragungoren.java.*;
class list{
int data;
list next,prev;
}
class Ilgaz{
static list hlist1=new list();
static list tlist1=new list();
static list hlist2=new list();
static list tlist2=new list();
static list hlist3=new list();
static list tlist3=new list();
static **** addFirst(list hlist,int data ) {
list newlist = new list();
newlist.data = data;
hlist.next.prev = newlist;
newlist.next= hlist.next;
hlist.next = newlist;
newlist.prev = hlist;
}
static Stack sayi2=new Stack();
static String say,ss; static Stack sayi=new Stack();
static int q=0; static int a=0;
public static **** main (String[] args) {
hlist1.next=tlist1; tlist1.prev=hlist1; hlist2.next=tlist2; tlist2.prev=hlist2; hlist3.next=tlist3; tlist3.prev=hlist3;
int s=0,d=0;
int x=0; try {
FileReader fr = new FileReader("input.txt");
BufferedReader br = new BufferedReader(fr);
while ((ss = br.readLine()) != null) {
if(x==0){
x++;
StringTokenizer sy = new StringTokenizer(ss, " ");
while (sy.hasMoreTokens()) {
say= sy.nextToken();
d=say.length();
for (int i = 0; i<say.length(); i++) { sayi.push((String.valueOf(say.charAt(i))));
}while(!sayi.isEmpty())
addFirst(hlist1,(Integer.parseInt((String)sayi.pop())) ); }}
else if(x==1){
StringTokenizer syy = new StringTokenizer(ss, " "); while (syy.hasMoreTokens()) {
say= syy.nextToken();
s=say.length();
for (int i = 0; i<say.length(); i++) {
sayi.push((String.valueOf(say.charAt(i))));}
while(!sayi.isEmpty())
addFirst(hlist2,(Integer.parseInt((String)sayi.pop())) ); }}}}
catch (IOException ex){
System.out.println("DOSYA OKUMA HATASI");}
catch (Exception ex) {
System.out.println("KODLAMA HATASI");}
list current=hlist1;
System.out.print ("CARPILAN SAYI = ");
x=0; int y=0;
for (int h = 0; h<d-d+s; h++)
System.out.print(" ");
while(current!=tlist1.prev){
x++;
current=current.next;
System.out.print(current.data);}
System.out.println ();
list current1=hlist2;
System.out.print("CARPAN SAYI = ");
for (int h = 0; h<s-s+d; h++)
System.out.print(" ");
while(current1!=tlist2.prev){
y++;
current1=current1.next;
System.out.print(current1.data);}
System.out.println ();
current=hlist1;
while(current!=tlist1.prev)
{current=current.next;
sayi.push((String.valueOf(current.data)));}
current1=hlist2;
while(current1!=tlist2.prev)
{current1=current1.next;
sayi2.push((String.valueOf(current1.data)));}
list pivot=tlist3;
list current4=tlist3;
int j=0; int i=0;
list current3;
for ( i=0; i<y; i++){
for( j=0; j<x; j++){
if(i==0){
q=a+Integer.parseInt((String)sayi.get(sayi.size()-1-j))*Integer.parseInt((String)sayi2.get(sayi2.size()-1-i));
a=q/10;
addFirst(hlist3,(q%10));
f(j==x-1){
if(a!=0)
addFirst(hlist3,a);
a=0; q=0;
current4=tlist3.prev.prev;
pivot=current4.next;}}
if(i!=0){
q=Integer.parseInt((String)sayi.get(sayi.size()-1-j))*Integer.parseInt((String)sayi2.get(sayi2.size()-1-i));
a=(current4.data+q)/10;
current4.data=(current4.data+q)%10;
addFirst(hlist3,0);
current4.prev.data=current4.prev.data+(a);
current4=current4.prev;}}
if(i!=0){
for (int k=0; k<i+1; k++);
pivot=pivot.prev;
current4=pivot.prev;;}}
System.out.print (" X");
for (int k= 0; k<j+i+2; k++)
System.out.print("_");
System.out.println ();
current3=hlist3;
while(current3.data==0)
current3=current3.next;
current3=current3.prev;
System.out.print("SONUC = ");
while(current3!=tlist3.prev ){
current3=current3.next;
System.out.print(current3.data);}
System.out.println ();
}
}
import java.io.*;
import java.util.*;
import com.boragungoren.java.*;
class list{
int data;
list next,prev;
}
class Ilgaz{
static list hlist1=new list();
static list tlist1=new list();
static list hlist2=new list();
static list tlist2=new list();
static list hlist3=new list();
static list tlist3=new list();
static **** addFirst(list hlist,int data ) {
list newlist = new list();
newlist.data = data;
hlist.next.prev = newlist;
newlist.next= hlist.next;
hlist.next = newlist;
newlist.prev = hlist;
}
static Stack sayi2=new Stack();
static String say,ss; static Stack sayi=new Stack();
static int q=0; static int a=0;
public static **** main (String[] args) {
hlist1.next=tlist1; tlist1.prev=hlist1; hlist2.next=tlist2; tlist2.prev=hlist2; hlist3.next=tlist3; tlist3.prev=hlist3;
int s=0,d=0;
int x=0; try {
FileReader fr = new FileReader("input.txt");
BufferedReader br = new BufferedReader(fr);
while ((ss = br.readLine()) != null) {
if(x==0){
x++;
StringTokenizer sy = new StringTokenizer(ss, " ");
while (sy.hasMoreTokens()) {
say= sy.nextToken();
d=say.length();
for (int i = 0; i<say.length(); i++) { sayi.push((String.valueOf(say.charAt(i))));
}while(!sayi.isEmpty())
addFirst(hlist1,(Integer.parseInt((String)sayi.pop())) ); }}
else if(x==1){
StringTokenizer syy = new StringTokenizer(ss, " "); while (syy.hasMoreTokens()) {
say= syy.nextToken();
s=say.length();
for (int i = 0; i<say.length(); i++) {
sayi.push((String.valueOf(say.charAt(i))));}
while(!sayi.isEmpty())
addFirst(hlist2,(Integer.parseInt((String)sayi.pop())) ); }}}}
catch (IOException ex){
System.out.println("DOSYA OKUMA HATASI");}
catch (Exception ex) {
System.out.println("KODLAMA HATASI");}
list current=hlist1;
System.out.print ("CARPILAN SAYI = ");
x=0; int y=0;
for (int h = 0; h<d-d+s; h++)
System.out.print(" ");
while(current!=tlist1.prev){
x++;
current=current.next;
System.out.print(current.data);}
System.out.println ();
list current1=hlist2;
System.out.print("CARPAN SAYI = ");
for (int h = 0; h<s-s+d; h++)
System.out.print(" ");
while(current1!=tlist2.prev){
y++;
current1=current1.next;
System.out.print(current1.data);}
System.out.println ();
current=hlist1;
while(current!=tlist1.prev)
{current=current.next;
sayi.push((String.valueOf(current.data)));}
current1=hlist2;
while(current1!=tlist2.prev)
{current1=current1.next;
sayi2.push((String.valueOf(current1.data)));}
list pivot=tlist3;
list current4=tlist3;
int j=0; int i=0;
list current3;
for ( i=0; i<y; i++){
for( j=0; j<x; j++){
if(i==0){
q=a+Integer.parseInt((String)sayi.get(sayi.size()-1-j))*Integer.parseInt((String)sayi2.get(sayi2.size()-1-i));
a=q/10;
addFirst(hlist3,(q%10));
f(j==x-1){
if(a!=0)
addFirst(hlist3,a);
a=0; q=0;
current4=tlist3.prev.prev;
pivot=current4.next;}}
if(i!=0){
q=Integer.parseInt((String)sayi.get(sayi.size()-1-j))*Integer.parseInt((String)sayi2.get(sayi2.size()-1-i));
a=(current4.data+q)/10;
current4.data=(current4.data+q)%10;
addFirst(hlist3,0);
current4.prev.data=current4.prev.data+(a);
current4=current4.prev;}}
if(i!=0){
for (int k=0; k<i+1; k++);
pivot=pivot.prev;
current4=pivot.prev;;}}
System.out.print (" X");
for (int k= 0; k<j+i+2; k++)
System.out.print("_");
System.out.println ();
current3=hlist3;
while(current3.data==0)
current3=current3.next;
current3=current3.prev;
System.out.print("SONUC = ");
while(current3!=tlist3.prev ){
current3=current3.next;
System.out.print(current3.data);}
System.out.println ();
}
}