noura karimi
شنبه 27 آبان 1391, 21:14 عصر
سلام دوستان یه برنامه به زبان c++ نوشتم اما خیلی پیچیدش کردم کسی میتونه ساده ترش کنه؟؟؟
#include<iostream.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
randomize(int);
int main(){
clrscr();
int h,k,i,j,a,c,m,n,p,x,y;int g=1;
int arr[50][50];
cout<<"line"<<"\t"<<"pilarr"<<"how many number do you want insert"<<"\n";
cin>>n>>m>>p;
for(i=0;i<n;i++){
for(j=0;j<m;j++){
arr[i][j]=-1;}}
if(p>(n*m) ){cout<<"your number is top please lower";cin>>p;}k=0;
while(k<p){
x=random(m);
y=random(n);
if(arr[x][y]==-1){arr[x][y]=g;g++;k++;}}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
cout<<arr[i][j]<<"\t";}
cout<<"\n";}
cout<<"**************************";
int s,q,l;
cout<<"\n ";cout<<"nter a two number";
cin>>q>>l; int b=1;
int arr2[40][40];
for(int u=0;u<q;u++){
for(int c=0;c<l;c++){
arr2[u][c]=-1;
}} k=0;
while(k<p){s=random(q);a=random(l);
if (arr2[s][a]==-1){arr2[s][a]=b;b++;k++;}}
for(i=0;i<q;i++){
for(j=0;j<l;j++){
cout<<arr2[i][j]<<"\t";}cout<<"\n";}
int full[50][50];
int carry[50];
for(i=0;i<p;i++){carry[i]=-1;}
b=random(q); int f=0; int e,d; int o;int v;
for(i=0;i<q;i++){
for(j=0;j<l;j++){
full[i][j]=-1;}}
for(v=0;v<q*l;v++){ o=b%2;
if(b>q){b=b-q;}
if(o==0){
for(a=0;a<l;a++){
if (arr[b][a]!=-1){e=arr[b][a];}
if ((arr[b][a]!=-1)&&(carry[e-1]!=2)){
full[b][a]=arr[b][a]; carry[e-1]=2;f++;
}}}
if(o==1){
for(c=0;c<l;c++){
if(arr2[b][c]!=-1){e=arr2[b][c];}
if((arr2[b][c]!=-1)&&(carry[e-1]!=2)){
full[b][c]=arr2[b][c];carry[e-1]=2;f++;}}} b++;}
int ran;int rani;//end of swich
cout<<"\n";
for(i=0;i<p;i++){
if(carry[i]==-1){s=random(q);d=random(l);
ran=random(q);rani=random(l);if(full[s][q]==-1){full[s][q]=i+1;f++;}else{full[ran][rani]=i+1; }
}}
for(i=0;i<q;i++){
for(j=0;j<l;j++){cout<<"\t"<<full[i][j]<<"\t";}cout<<"\n";}
getch();
return 0;
}
#include<iostream.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
randomize(int);
int main(){
clrscr();
int h,k,i,j,a,c,m,n,p,x,y;int g=1;
int arr[50][50];
cout<<"line"<<"\t"<<"pilarr"<<"how many number do you want insert"<<"\n";
cin>>n>>m>>p;
for(i=0;i<n;i++){
for(j=0;j<m;j++){
arr[i][j]=-1;}}
if(p>(n*m) ){cout<<"your number is top please lower";cin>>p;}k=0;
while(k<p){
x=random(m);
y=random(n);
if(arr[x][y]==-1){arr[x][y]=g;g++;k++;}}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
cout<<arr[i][j]<<"\t";}
cout<<"\n";}
cout<<"**************************";
int s,q,l;
cout<<"\n ";cout<<"nter a two number";
cin>>q>>l; int b=1;
int arr2[40][40];
for(int u=0;u<q;u++){
for(int c=0;c<l;c++){
arr2[u][c]=-1;
}} k=0;
while(k<p){s=random(q);a=random(l);
if (arr2[s][a]==-1){arr2[s][a]=b;b++;k++;}}
for(i=0;i<q;i++){
for(j=0;j<l;j++){
cout<<arr2[i][j]<<"\t";}cout<<"\n";}
int full[50][50];
int carry[50];
for(i=0;i<p;i++){carry[i]=-1;}
b=random(q); int f=0; int e,d; int o;int v;
for(i=0;i<q;i++){
for(j=0;j<l;j++){
full[i][j]=-1;}}
for(v=0;v<q*l;v++){ o=b%2;
if(b>q){b=b-q;}
if(o==0){
for(a=0;a<l;a++){
if (arr[b][a]!=-1){e=arr[b][a];}
if ((arr[b][a]!=-1)&&(carry[e-1]!=2)){
full[b][a]=arr[b][a]; carry[e-1]=2;f++;
}}}
if(o==1){
for(c=0;c<l;c++){
if(arr2[b][c]!=-1){e=arr2[b][c];}
if((arr2[b][c]!=-1)&&(carry[e-1]!=2)){
full[b][c]=arr2[b][c];carry[e-1]=2;f++;}}} b++;}
int ran;int rani;//end of swich
cout<<"\n";
for(i=0;i<p;i++){
if(carry[i]==-1){s=random(q);d=random(l);
ran=random(q);rani=random(l);if(full[s][q]==-1){full[s][q]=i+1;f++;}else{full[ran][rani]=i+1; }
}}
for(i=0;i<q;i++){
for(j=0;j<l;j++){cout<<"\t"<<full[i][j]<<"\t";}cout<<"\n";}
getch();
return 0;
}