PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مشکل در برنامه نویسی ++c



pnugirl
04-19-2010, 11:39 AM
دارم یه برنامه شبیه سازی ساده واسه تمرین دانشگاهم می نویسم.
می خوام یه خروجی از متغیرهام بگیرم. دستوری که دادم اینه
cout<<time<<" "<<LQ<<" "<<LS<<" |"<<B<<" "<<E<<" "<<ES<<" |"<<endl;
البته توی یه حلقه while که هرکدوم از این متغیرها مرتب عوض میشن. خروجیم رو می خوام به صورت مرتب دربیارم که مثلا ستون اول همه زمان ها به صورت مرتب و زیر هم قرار بگیرن. وقتی که یک رقمی هستن جدولم مرتبه اما وقتی یکیشون دورقمی می شه کل جدول به هم میخوره البته دلیلش رو می دونم. دلیلش اینه که تعداد فاصله هایی که بعد هرکدوم از متغیرها قرار دادم ثابته و وقتی تعداد رقم ها زیاد میشه دیگه نمیتونه مرتب بمونه. اما نمیدونم راه حلش چیه. اگر کسی می دونه که می تونم چه جوری حلش کنم لطفا کمکم کنه

TAHA
04-21-2010, 07:02 PM
دارم یه برنامه شبیه سازی ساده واسه تمرین دانشگاهم می نویسم.
می خوام یه خروجی از متغیرهام بگیرم. دستوری که دادم اینه
cout<<time<<" "<<lq<<" "<<ls<<" |"<<b<<" "<<e<<" "<<es<<" |"<<endl;
البته توی یه حلقه while که هرکدوم از این متغیرها مرتب عوض میشن. خروجیم رو می خوام به صورت مرتب دربیارم که مثلا ستون اول همه زمان ها به صورت مرتب و زیر هم قرار بگیرن. وقتی که یک رقمی هستن جدولم مرتبه اما وقتی یکیشون دورقمی می شه کل جدول به هم میخوره البته دلیلش رو می دونم. دلیلش اینه که تعداد فاصله هایی که بعد هرکدوم از متغیرها قرار دادم ثابته و وقتی تعداد رقم ها زیاد میشه دیگه نمیتونه مرتب بمونه. اما نمیدونم راه حلش چیه. اگر کسی می دونه که می تونم چه جوری حلش کنم لطفا کمکم کنه

با سلام
دوست عزيز
اگر بشه كل برنامه رو بزاريد بهتر مي تونيم كمكتون بكنيم
:282:

TAHA
04-21-2010, 09:12 PM
دارم یه برنامه شبیه سازی ساده واسه تمرین دانشگاهم می نویسم.
می خوام یه خروجی از متغیرهام بگیرم. دستوری که دادم اینه
cout<<time<<" "<<LQ<<" "<<LS<<" |"<<B<<" "<<E<<" "<<ES<<" |"<<endl;
البته توی یه حلقه while که هرکدوم از این متغیرها مرتب عوض میشن. خروجیم رو می خوام به صورت مرتب دربیارم که مثلا ستون اول همه زمان ها به صورت مرتب و زیر هم قرار بگیرن. وقتی که یک رقمی هستن جدولم مرتبه اما وقتی یکیشون دورقمی می شه کل جدول به هم میخوره البته دلیلش رو می دونم. دلیلش اینه که تعداد فاصله هایی که بعد هرکدوم از متغیرها قرار دادم ثابته و وقتی تعداد رقم ها زیاد میشه دیگه نمیتونه مرتب بمونه. اما نمیدونم راه حلش چیه. اگر کسی می دونه که می تونم چه جوری حلش کنم لطفا کمکم کنه


با سلام
دوست عزيز
اگر بشه كل برنامه رو بزاريد بهتر مي تونيم كمكتون بكنيم
:282:

خوب خودم سريعتر براش يك راه حل پيدا كردم كه خدمتتون ارايه مي شود:

این کدی که نوشتم همین کار رو میکنه فقط با ارایه ها این کارو میکنه ، چون فقط میخوام بهت نشون بدم که چطور این کار رو بکنی.



#include <iostream.h>
#include <stdio.h>
#include <string.h>
const int A = 2,B = 6;
int a[A][b]={0,555,99,156666,14,89,
4444,5,313,10,0,765};
int s[b] ={0,0,0,0,0,0};
void main (void)
{
int i,j,len;
char buff[20];
for(i = 0;i < A;i++)
{
for(j = 0;j < B;j++)
{
sprintf(buff,"%d",a[i][j]);
len = strlen(buff);
if(s[j] < len)
{
s[j] = len;
}
}
}
for(i = 0;i < A;i++)
{
for(int j = 0;j < B;j++)
{
sprintf(buff,"%d",a[i][j]);
len = strlen(buff);
len = s[j]-len;
cout<<a[i][j];
for(int k = 0;k < len+2;k++)
cout<<" ";
}
cout<<endl;
}
}
کاری که شما باید انجام بدی اینه که هر عددی رو که میخواهی چاپ کنی ، طولش رو در یک متغییر قرار بدی و
در دور بعدی که دوباره میخواهی اون متغییر رو نشون بدی ، دوباره طولش رو بدست بیاری و از طولی که در اون متغییر ذخیره کردی کم کنی و به اندازه ی مقدار بدست آمده فاصله چاپ کنی .

pnugirl
04-22-2010, 12:36 PM
خودم این راه به ذهنم رسید ولی خیلی پیچیده میشد. باشه بازم. مرسی از زحمتی که کشیدین اقا طه