PDA

View Full Version : جستجو در آرایه (کار با رشته ها)



omidan321
پنج شنبه 26 اردیبهشت 1392, 15:44 عصر
سلام به همگی
من یه رشته تقریبا 60 کارکتری دارم قطعه کد زیر رو دادم به برنامه

while jk<= length(msg) do
begin
tmp[jk]:=copy(msg,jk,3);
jk:=jk+6;
end;

در خط 3 و با دستور copy سه تا از رشته رو برمی دارم و میزارمش توی آرایه اتفاقی که می افته به صورت زیر هستش
123, , , , , , , ,236, , , , , , ,258 , , , , , , ,369
من هم میخام تو فاصله 7 تا 7 تا از همدیگه سه تا بردارم و هم ارایه من به صورت پشت سر هم بشه


میتونید راهنماییم کنید

یوسف زالی
پنج شنبه 26 اردیبهشت 1392, 16:18 عصر
سلام.
برای Temp یک شمارنده ی جداگانه در نظر بگیرید. یا اینکه به جای دستور خط سوم این کار رو کنید:
Tmp := Tmp + Copy

omidan321
جمعه 27 اردیبهشت 1392, 11:11 صبح
104291
این trace همین قطعه کد هستش که به صورت زیر اصلاحش کردم





jk:=1;
num_tmp:=1;
while jk<= length(msg) do
begin
tmp[num_tmp]:=copy(msg,jk,6);
num_tmp:=num_tmp+1;
jk:=jk+6;
end;

چون حجم محتوای متغیر msg معلوم نیست میخام بدونم که چقدر از ارایه من پر شده یعنی شماره آخرین اندیس آرایه من که توش مقدار ذخیره شده چیه ؟

omidan321
دوشنبه 30 اردیبهشت 1392, 08:48 صبح
کسی نمیدونه مقادیر پر شده توی ارایه چقدره؟ به عبارتی اندازه ارایه چقدره ؟(شماره اخرین اندیس پر شده)

BORHAN TEC
دوشنبه 30 اردیبهشت 1392, 09:11 صبح
سلام

کسی نمیدونه مقادیر پر شده توی ارایه چقدره؟ به عبارتی اندازه ارایه چقدره ؟(شماره اخرین اندیس پر شده)
با توابع Low و High می توانید اندیس پایینی و بالایی را بدست آورید. طبیعی است که برای بدست آوردن اندازه آرایه باید از روش زیر استفاده کنید:

High(Arr)-Low(Arr) + 1
موفق باشید...

omidan321
پنج شنبه 02 خرداد 1392, 10:29 صبح
مقدار یک ارایه رو چطور میشه صفر کرد ؟ توی برنامه من وقتی مقداری میاد توی ارایه میشینه از مقادیرش استفاده میکنم میخام خالی بشه تا دوباره توی ارایه مقادیر رو بنشونم چطور میشه اینکار رو کرد ؟ (خالی کردن ارایه از مقادیر)