این نکته را یادم رفت بگم:
لطفا" بحث جداگانه روتو تاپیک جدید ایجادکنید
Printable View
این نکته را یادم رفت بگم:
لطفا" بحث جداگانه روتو تاپیک جدید ایجادکنید
سلام
دوست عزیز حرفت راجع به اینکه این یک پرو÷ه بود درسته اما درست نیست که بگی اطلاعات من کامل نیست.
من این برنامه رو خودم به دو صورت نوشتم وهیچ مشکلی هم نداشت.اما برای بهتر شدن برنامه خواستم
از گرافیک هم استفاده کنم.چون وقت نداشتم در این مورد کمک خواستم.حالا که پرو÷ه رو تحویل دادم.راستی
یک تایپیک هم درست کردم اما بدلیل عجله ای که داشتم اینجا هم درخواستم رو گفتم.
در هر صورت ممنون حداقل جو ابی دادید. :blush:
من تازه اومدم انیجا . امیدوارم بتونم به همه کمک کنم و همه به من کمک کنند
درضمن به این شکلک :biggrin: هم خیلی علاقه دارم .
بچه ها سلام من از صدرا درخواست كردم تا دوباره تايپك رو رو پا كنه ....
انشا ا...
فعلا قبول كرده ...
تا بعد ....
من اصلاً جوجه نیستم داداش.
ما خودمون حرفه ای هستیم.
حالا یه سؤال که آیا در پاسکال از نظر تعداد کاراکتر محدودیتی هست؟
من اول یه بازی نوشتم که کا ملاً درست کار می کند .اینم لینکش:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
خوب حالا حتماً دقت کردید که قبل از هر بازی مثلا ً شرکت سازنده اش معرفی می شود یا ...
ما هم آمدیم یه چنین چیزی را برای خودمون بسازیم و این کار را در یک فایل جدا کردیم.اینم لینکش:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
و بعد این برنامه را در ابتدای برنامه ی بازی اصلی قرار دادیم یعنی درست بعد از beginاصلی .
اما با این error مواجه شدم:
ERROR 124:statement part too longاگه ممکنه دانلودش کنید و جواب سؤال منو بدید.کلاً با هم 10کیلو هم نیستند.
ممنون.:10:
کمک فوری برای نوشتن یه برنامه پاسکال
--------------------------------------------------------------------------------
هرکار میکنم نتونستم برنامه ای بنویسم که بتونه نمودار زیر رورسم کنه. میخواستم ببینم کسی از ذوستان میتونه کمک کنه؟
e -0.1r sin (0.5 r) = y که نقاط نمودار با ستاره مشخص بشه و مقدار y رو با استفاده از تابع round گرد کرد.
0.1r - توان e عدد نپر است
سلام به همه مهندسای کامپیوتر کمک می می خوام!!!
من دانشجوی ترم اول کامپیوترم استادمون درست درس نمیده من هیچی حالیم نشده! کمک می خوام
2 تا برنامه داده که بنویسم اما بلد نیستم! ممنون می شم کمکم کنین شرمندمممم!!!
اولیش ایه : برنامه ای که یک عدد صحیح و مثبت کمتر از 366 را دریافت و تاریخ روز را مشخص کنه ؟
دومیش : برنامه ای که ساعت شروع و خاتمه کار یک کارمند را دریافت و مدت زمان کار را محاسبه کند ؟
بازم تشکر می کنم!!!!!!!!!!!!
سلام به همه مهندسای کامپیوتر کمک می می خوام!!!
من دانشجوی ترم اول کامپیوترم استادمون درست درس نمیده من هیچی حالیم نشده! کمک می خوام
2 تا برنامه داده که بنویسم اما بلد نیستم! ممنون می شم کمکم کنین شرمندمممم!!!
اولیش ایه : برنامه ای که یک عدد صحیح و مثبت کمتر از 366 را دریافت و تاریخ روز را مشخص کنه ؟
دومیش : برنامه ای که ساعت شروع و خاتمه کار یک کارمند را دریافت و مدت زمان کار را محاسبه کند ؟
بازم تشکر می کنم!!!!!!!!!!!!
بیا عزیز ، این برنامه ی اولت تا برای دومی هم یه فکری بکنیم:اگه دانلود کردی یه تاپیک بزن تا بفهمم.
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
این صفحه را که باز کردی اون زیرش نوشته دانلود.گیر نکنی.:8: :10:
سلام
در بازگشت يه برنامه ناقابل .....
شمارش كاراكتر در متن
ياعليکد:(* Program: Finding The Number of Character
Programmer: Sadra
*)
Const
Maxary=15
Type
Ary=array[1..maxary] of integer;
Var
A,k,t,j,i:integer;
Str1,str2:string;
Ary1:ary;
Begin
Writeln(’Enter string:’)
Readln(str1);
A:=length(str1);
Cnt:=1;
K:=1,
For i:=1 to a do
Begin
For j:=2 to a do
begin
While (j<=a) do
begin
If str1[i]=str1[j] then
begin
cnt:=cnt+1;
j:=j+1;
end
else
j:=j+1;
end;
str2[k]:=str1[i];
ary1[k]:=cnt;
end;
k:=k+1;
end;
for i:=1 to k do
writeln();
readln;
end.
قربون همتون صدرا
سلام
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
رحلت جانسوز مرجع عليقدر عالم تشيع حضرت ايت الله العظمي محمد فاضل لنكراني را به امام عصر (عج) و مقام معظم رهبري و همه امت حزب الله تسليت عرض مي كنم
برنامه قبلي رو يه بار ديگه هم داده بودم ...؟؟؟!!! :18: :18:
خوب يادم نبود....!!!
حالا يكي ديگه...
درهم كردن دو متن <==>Merg of 2 string
قربون همتون صدراکد:(* Program: Merge tow strings
Programmer :Sadra
*)
CONST
SIZE=25;
VAR
ARY1:ARRAY[1..SIZE] OF INTEGER;
STR1,STR2:STRING;
I,A,B,K,J:INTEGER;
Begin
Writeln ('ENTER FIRST STRING : ');
Readln(STR1);
Writeln ('ENTER Second STRING : ');
Readln(STR2);
a:= length(STR1);
b:=length(STR2);
m:= a+b;
j:=1;
i:=a+1;
while i<=m do
begin
str1[i]:=str2[j];
i:=i+1;
j:=j+1;
end;
writeln (‘ The Merge of tow Strings is : ‘);
for i:=1 to m do
write (str1[i]);
Readln;
End.
يا علي
این دیگه چه تاپیک مسخره ایه ؟!
اینجوری همه چی قاطی شده اگه کسی سوالی داره باید در تاپیک جدا گانه بنویسه تا شاید ما هم سوال و جواب و ببینیم و تجربمون زیاد بشه یا اگه بتونیم کمک کنیم نه اینکه همه چی تو یه تاپیک باشه اونم به این صورت
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
سلام در راستاي توسعه زندگي پاسكال را كنار گذاشته به سراغ C مي رويم
اما...
همچنان به پاسكاليان كمك خواهيم كرد
ببخشيد ولي چون نمي دونستم كجا سوالم را بپرسم اينجا ميگم كسي ميتونه راهنماييم كنه چه طوري جواب دستگاهnمعادله n مجهول رابه روش گاوس-جردن تو پاسكال بنويسم؟
مطمئن باش وقتی نتونی واسه این سوالات حد اقل الگوریتمشو پیدا کنی تا آخر عمرت جوجه می مونی.
تو هنوز جوجه ای واسه مهندس شدن
سلام خدمت تمامی هم قطاران عزیز!
آقا ما پاسکال پروگرامر نیستیم! ولی چه می شه کرد از دست این ملت سوء استفاده کن که تا یه نرم افزاری گیر میارن کلی پروژه می ریزن تو سرش!
خدمتتون عرض کنم که من هم از این به بد اینجا پاتوقمه، گفتم که، زبون من پاسکال نیست و جاوا می پرم، اما همچین گلابی هم نیستم تون این پاسکال!
عرض شود که دو تا سوال بپرسم من!
چجوری می شه ارور ها رو کنترل کرد؟ یه مثال بزنم، من دوست دارم یه عدد از ورودیم بگیرم ولی کسی که داره با برنامه کار می کنه یه مقدار تنش می خاره و یه استرینگ وارد می کنه! ران تایم ارور 106 میاد! ولی می دونین که زشته برای یه برنامه نویس که ران تایم ارور سوتیش باشه!
و دوم این که آقا ما جون این سیستم لعنتی رو در آوردیم ولی نتونستیم یه خط بکشیم تو این پاسکال، یه جورایی مسخرمون کرده! initGraph ام مشکل داره... یعنی اول فکر کردم من مشکل دارم ها! رفتم سراغ مثال ها و از اون ها اجرا کردم ولی خب اون ها هم مورد داشتن... اگه خواستین اررورش رو براتون در میارم ولی اگه شما تجربه ی این مشکل رو دارن plz کمک کنید!
--------------------------------
پس شد چی؟!! مدیریت ارور و راه اندازی گرافیک.
نقل قول:نقل قول:نقل قول:برای شرو بد نیست این مثال رو بررسی کنیم!نقل قول:
اگه تو help پاسکال دنبال integer بگردی به Integer types می رسی...
چی نوشته توش؟ خب برای integer ما 16 بیت با علامت کنار می کشیم از حافظه. خب این یعنی این که ما اعدادی بین -32768 تا 32767 می تونیم کنار بذاریم و این رنج از 18 فاکتوریل خیلی کم تره. 18 فاکتوریل می شه 6402373705728000
باید نوع متغیر رو طوری انتخاب کنیم که این عدد توش جا بشه، پس به قول دوستان longint رو تست کنیم. 32 بیت با علامت... خوبه ها ولی رنجش بین -2147483648 تا 2147483647 اِ یعنی باز 18 فاکتوریل توش جا نمی شه. بذار یکم عمقی تر نگاه کنیم.
دوستان گفتن که آورفلاو یا همون سر ریز رخ می ده... بله، درست هم می گین. یعنی بیت ها پشت سر هم 1 می شن و متغیر همین طور بزرگ تر می شه... تا جایی که حتی بیت علامت هم 1 می شه و عدد منفی می شه. بعد فقتی 16 تا بیت پشت سر هم 1 شد! متغیر به نهایت ظرفیت خودش می رسه. بعد یه دفه همش 0 می شه. البته در مرحله بعد این اتفاق میفته ها!
خب توی همون help دنبال متغیر ها اعشاری بگردیم چون معمولا بیشتر از متغیر ها صحیح از حافظه اشغال می کنن. من real رو سرچ می کنم:
خود real یه 6 بایتی (48 بیت!) از حافظه قورت می ده! این یعنی از longint هم بیشتر! حال کردی؟! از 2.9*10 به توان -39 تا 1.7*10 به توان 38! می دونی یعنی چی!
یکم پایین تر میام و singlr و double و extended و comp رو می بینم! زیره comp چی نوشته؟! نوشته
خب این همون چیزیه که ما می خوایم! 19-20 رقم!کد:Note: The comp type is a 64-bit integer. It holds only integral values...
البته اون extended هم همچین بد نیست ها!
خب کافیه توی همون برنامه ی خودت، یکم تغییر بدیم تا مشکل حل بشه!
البته راه قشنگ تر برای فاکتوریل استفاده از تابع باز گشتیه! بذار یه مثال بزنم! فاکتوریل 0 چند می شه؟! می شه 1! خب برنامه ی تو قادر به حل اون نیست!کد:{$N+}
VarBegin
fact:comp;
i,n:integer;End.
Fact:=1;
Write ('please enter a number');
Readln (n);
For i:=n downto 1 doWriteln('fact=',fact:20:0);
Fact:=fact*I;
readln;
به عنوان تمرین به تابع بازگشتی فکر کن!:10:
موفق باشی!
اول جواب سوال دومت !نقل قول:
ببین عزیز دل بابا مشکل از تو نیست ! مشکل از این توربو پاسکال فلان شده است !!!!
بعضی نسخه های توربو پاسکال با InitGraph مشکل دارن ، منم زمانی که پاسکال داشتم همین مشکل رو داشتم نسخه درست Turbo رو پیدا کردم که با InitGraph مشکل نداشت ولی نمیدونم هنوزم دارمش یا نه میگردم اگه پیدا کردم واست آپ میکنم .
و اما سوال اولت !:
باید ورودی رو بصورت رشته از کاربر بگیری و اگه مثلا اول 1 رو زد 1 رو بریز تو A بعد 2 رو زد A*10 رو با 2 جمع کن و الی آخر . . . اگه . (Dot) زد A یک متغییر عمومی رو True کن و از حالا به بعد عمل A*10 رو انجام نده بجاش ورودی رو به ته اعشار اضافه کن (یه متغییر دیگه اینجا لازم داری که رقمی که میخواد به ته اعشار اضافه کنه رو مشخص کنه)
:21: یواش یواش داشتم از خودم نا امید می شدم. پس مشکل از پاسکاله... او کی! من یه کامپایلر پاسکال تو اوبونتو دارم، با اون هم تست می کنم! اگه جواب داد نتیجش رو بتون گزارش می کنم.نقل قول:
اما جواب دومت که برای سوال اوله منه! جواب من نبود! من پرسیدم که چجوری می شه ارور ها رو مدیریت کرد نه چطور ورودی رشته ای بگیرم به جای Real غالبش کنم :31::11:
مرسی که بهم جواب دادین:10:
lvn ;i lvn
afshinaghasi جان من نمیخوام مهندس بشم چون رشته ام ریاضیه.
در ضمن الگوریتمشا پیدا کردم
حالا اگه میتونی بگو تو تبدیل یه ماتریس به بالا مثلثی اگه درایه روی قطر اصلی صفر شدچیکار کنم؟
اگه میتونی راهنمایی کن مهندس(آینده).:31:
من یادم رفته این بالا مثلثی چی بود، همون نبود که زیر قطر اصلیش همه درایه ها 0 باشن؟
فارسی این جمله lvn ;i lvn هم می شه مرد که مرد ولی منظور چیه؟
افرین همینه.....
نقل قول:نقل قول:پس معلومه که این کاره نیستی.نقل قول:
خب شما یه ماتریس مربعی رو ریختی توی یه آرایه ی معادل. فقط کافیه توی دو تا حلقه که از خط اول هیچی، از خط دوم یکی و از خط ان ام، ان - 1 ای 0 کنی. خیلی آسونه... اگه بلد باشی این مثلث رو بسازی:
البته اون عدد اول نشون دهنده ی شماره خط اِ! خیلی راحت می تونی ماتریس رو تبدیل کنی. دو تا حلقه For تو در تو که اولی از 1 شرو می شه و به اندازه ی طول ماتریس ادامه داره و دومی که از 1 شرو می شه و تا متغیر حلقه ی قبلی منهای یک ادامه داره. بد داخل داخلی ترین حلقه شما درایه (به قول ما برنامه نویسا، آرایه) متناظر با متغیر حلقه ها رو 0 می کنی. به همین آسونی.کد:1:
2:0
3:00
4:000
5:0000
...
دوست عزيز
اگه منظورت اين كه هردرايه را برداري و جاش صفر بذاري كه رياضيت خيلي ضعيفه واگر نه كه من نفهميدم
من برنامه تبديل به بالا مثلثي را گذاشتم جواب هم ميده ولي اگه درايه روي قطر اصلي صفرشد جواب نميده حالا شما كه این کاره هستي كمك كن چيكار كنم:31:
procedure first(var m:matrix;i1,i2:integer;a:Real)
var
j:Integer;
begin
for i:=1 to n do m[i1][j]+a*m[i2][j];
end;
procedure sec (var m:matrix);
var
i,j:Integer;
begin
for j:=1 to n do begin
for i:=j+1 to n do begin
first(m,i,j,_m[i][j]/m[j][i]);
end;
end;
end
پس همون ریاضیات من ضعیفه!نقل قول:
شما راه حل رو بگو تا رو برنامش فکر کنم.
ببين دوست عزيز
در عمليات ماتريس عملياتي داريم كه كه اگه روي ماتريس اعمال بشه اشكالي نداره مثل اضافه كردن ضريب يه سطر يا ستون به ديگري [كه من روي برنامه اي كه گذاشتم ( اگه دقت كرده باشي) همين روش را استفاده كردم ] يا جابجا كردن دو سطر يا ستون ( البته اگه اين كار را كردي بايد يه منفي تو دترمينان ضرب كني)
اشكال برنامه اي كه شما گفتيد اينه كه همون جوري كه درايه زير قطر اصلي را صفر ميكنيم درايه هاي قبلي ثابت نميمونند وتغيير ميكنند
اميدوارم با اين ياداوري بتوني كمكم كني
قربانت....
من بازی منچ رو با سی پلاس نوشتم.:20:
اگه کسی خواست می تونم بهش کمک کنم.:46:
البته حالا که قراره اینجا کد حاضر آماده تو دست بچه ها قرار نگیره خوب من هم هر سری راهنماییتون می کنم.
و یک قطعه از برنامه رو اینجا می زارم.
اگه کسی پایه بود خبر بده.:10:
حالا حتمآ باید با پاسکال باشه.نقل قول:
من با سی یاد دارم ولی با پاسکال تا حالا امتحان نکردم.
اگه با سی خواستی بگو تا بهت بگم.:20:
این برنامه به چه کدیه؟