www.pc3enter.tk
سه شنبه 28 شهریور 1396, 15:23 عصر
سلام برنامه نویس های ویژوال بیسیک.
میخواهم آموزش کوچک ولی مفید در زمینه کدهای موجود در ویژوال بیسیک بدهم.
در کد های زیر نمونه کد ها را نوشتم و فقط به ترتیب توضیح میدهم که کاربرد این چیست.
1. کاربرد این دستور این است که می اید از چپ به راست به تعداد عددی که نوشتی متن را جدا میکند و به شما تحویل میدهد.
Left("ali reza",6)
2.این دستور هم مثل دستور بالا عمل میکنه فقط از راست به چپ
Right("ali reza",6)
3.این دستور مثل ۲ تای بالایی عمل میکنه ولی هوشمند یا دقیق تر، که میاید متن را از شما میگره و به تعداد حروف و کاراکتر متن جدا میکنه به شما میده
Mid("ali reza", 2, 3)
4.کاربرد این دستور هم خیلی مورد نیاز هست که میاید متنی را از شما میگیره، بعد کلمه ای دنبال ان هستید را میگیره، و بعد با کلمه ای که میخواهید برایتان جابجا میکنه
Replace("ali reza", "ali", "majid")
5.متن را از شما میگیره و تمام حروف را بزرگ میکنه.( فقط حروف های لاتین)
Ucase("ali reza")
6.مثل بالایی ولی کوچک میکنه
Lcase("ali reza")
7.این دستور هم خیلی خاصه و کارکرد متفاوتی دارد چون زیاده فقط به همین اکتفا میکنم، که اگر این کد را بنویسید حروف اول هر کلمه را بزرگ میکنه
StrConv("ali reza", vbUpperCase)
8.تمام فضای خالی(Space) چه از راست و چه از چپ را پاک میکنه
Trim(" ali reza ")
9.مثل بالا فقط از طرف چپ.
LTrim(" ali reza ")
10.بالا راست فقط
RTrim(" ali reza ")
11.هجم یا به عبارتی تعداد حروف را به شما میدهد
Len("ali reza")
12.این کد هم خیلی خاص و کاربردیه که برای ۲ تا کار میکنه، ۱ در دستور شرط استفاده میشه و به شما میگه این کلمه در متن هست یانه، ۲ کلمه مورد نظر شما را پیدا میکنه و جایش را به شما به تعداد عدد میدهد.
InStr(1, "ali reza", "reza)
13.کد جدول حروف اسکی را از عدد به متن تبدیل میکنه
Chr(65)
14.مثل بالایی ولی برعکس
Asc("a")
15.هرچیزی که به بهش بدهید برعکس به شما تحویل میدهد
StrReverse("ali reza")
16.در یکی مانده به انتها میرسیم به دستور Array, که کاربردش فقط همینه که تعدادی متن بهش میدی و بعد به شکل جدول ستونی فقط داخل خودش ذخیره میکنه. که در اخر هم چاپ!!!
aa=Array("reza", "majid", "behnam")
Print aa(2)
17. اوخ اوخ، میرسیم به دستور Split اگر این دستور نبود نصف کارهای من لنگ بود
ببینید، ما چگونه میتوانیم از این دستور استفاده کنیم
این دستور کارش اینکه میاد از شما یک متنی را میگیرد و به دلخواه و حروف واژه مخصوص شما اون متن را تقسیم میکند.
مثلا:
aa=Split("ali.rahman.reza.akbar.behnam", ".")
Print aa(4)
حالا این کد چه کار میکنه، ؟؟؟ میاد بر اساس دستوری نوشتار نقطه "." (فرقی نمیکنه که چی باشه)تمام کلمه ها از هم جدا میکنه و بعد به شکل جدول درون aa ذخیره میکنه . و در اخر هم میاییم مثلا ردیف 5 , تکرار میکنم ردیف پنجم را به Print ویدیو تا چاپ کنیم.
حالا ما این همه کد یاد دادیم که چی. که حداقل بتوانیم روی متن بتوانیم بهتر کار کنیم و هم مهارتمان را تو کد زدن ببریم بالا
حالا من برای شما برنامه ای مینویسم که از طرف یک فرمول میگیره و برای شما محاسبه میکنه.
و این را بدانید وقتی فرمول میدهید برنامه نمیتوانید حساب کند.و اونو به عنوان String میشناسد. و جمع نمیکنه.!!!!!!!
مثلا فرض کنید inputbox باز میشه و کاربر توش مینویسم | 42+1+0+20 |
حالا کدش را چجوری بنویسیم؟؟؟؟؟؟؟ هـــــــــــا نمیگم چون آدم به گوتر میره.
شوخی کردم میگم.
ببنید ما در مرحله اول باید بفهمیم چندتا + داخل فرمول هست که با این دستور میشه
ForMol=inputbox("عدد بزن")
For aa=1 to Len(ForMol)
KK=Mid(ForMol,aa,1)
if Kk ="+" then cc=cc+1
Next aa
خب در اینجا تعداد جمع ها "+" را برنامه محاسبه میکنه و میریزه تو cc
بعدش میره سر مرحله دوم. و باید جمع ها را با split جدا کنیم.
aa=split(ForMol, "+")
For zz=0 to cc-1
ww=ww +aa(zz)
Next zz
Print ww
خب خلاص. این اون چیزی بود که میتوانستم به شما یاد بدهم.
البته اگر میخواهید همینو با #C بنویسید پوستتان را از وجود خلقتتان میکند.
میخواهم آموزش کوچک ولی مفید در زمینه کدهای موجود در ویژوال بیسیک بدهم.
در کد های زیر نمونه کد ها را نوشتم و فقط به ترتیب توضیح میدهم که کاربرد این چیست.
1. کاربرد این دستور این است که می اید از چپ به راست به تعداد عددی که نوشتی متن را جدا میکند و به شما تحویل میدهد.
Left("ali reza",6)
2.این دستور هم مثل دستور بالا عمل میکنه فقط از راست به چپ
Right("ali reza",6)
3.این دستور مثل ۲ تای بالایی عمل میکنه ولی هوشمند یا دقیق تر، که میاید متن را از شما میگره و به تعداد حروف و کاراکتر متن جدا میکنه به شما میده
Mid("ali reza", 2, 3)
4.کاربرد این دستور هم خیلی مورد نیاز هست که میاید متنی را از شما میگیره، بعد کلمه ای دنبال ان هستید را میگیره، و بعد با کلمه ای که میخواهید برایتان جابجا میکنه
Replace("ali reza", "ali", "majid")
5.متن را از شما میگیره و تمام حروف را بزرگ میکنه.( فقط حروف های لاتین)
Ucase("ali reza")
6.مثل بالایی ولی کوچک میکنه
Lcase("ali reza")
7.این دستور هم خیلی خاصه و کارکرد متفاوتی دارد چون زیاده فقط به همین اکتفا میکنم، که اگر این کد را بنویسید حروف اول هر کلمه را بزرگ میکنه
StrConv("ali reza", vbUpperCase)
8.تمام فضای خالی(Space) چه از راست و چه از چپ را پاک میکنه
Trim(" ali reza ")
9.مثل بالا فقط از طرف چپ.
LTrim(" ali reza ")
10.بالا راست فقط
RTrim(" ali reza ")
11.هجم یا به عبارتی تعداد حروف را به شما میدهد
Len("ali reza")
12.این کد هم خیلی خاص و کاربردیه که برای ۲ تا کار میکنه، ۱ در دستور شرط استفاده میشه و به شما میگه این کلمه در متن هست یانه، ۲ کلمه مورد نظر شما را پیدا میکنه و جایش را به شما به تعداد عدد میدهد.
InStr(1, "ali reza", "reza)
13.کد جدول حروف اسکی را از عدد به متن تبدیل میکنه
Chr(65)
14.مثل بالایی ولی برعکس
Asc("a")
15.هرچیزی که به بهش بدهید برعکس به شما تحویل میدهد
StrReverse("ali reza")
16.در یکی مانده به انتها میرسیم به دستور Array, که کاربردش فقط همینه که تعدادی متن بهش میدی و بعد به شکل جدول ستونی فقط داخل خودش ذخیره میکنه. که در اخر هم چاپ!!!
aa=Array("reza", "majid", "behnam")
Print aa(2)
17. اوخ اوخ، میرسیم به دستور Split اگر این دستور نبود نصف کارهای من لنگ بود
ببینید، ما چگونه میتوانیم از این دستور استفاده کنیم
این دستور کارش اینکه میاد از شما یک متنی را میگیرد و به دلخواه و حروف واژه مخصوص شما اون متن را تقسیم میکند.
مثلا:
aa=Split("ali.rahman.reza.akbar.behnam", ".")
Print aa(4)
حالا این کد چه کار میکنه، ؟؟؟ میاد بر اساس دستوری نوشتار نقطه "." (فرقی نمیکنه که چی باشه)تمام کلمه ها از هم جدا میکنه و بعد به شکل جدول درون aa ذخیره میکنه . و در اخر هم میاییم مثلا ردیف 5 , تکرار میکنم ردیف پنجم را به Print ویدیو تا چاپ کنیم.
حالا ما این همه کد یاد دادیم که چی. که حداقل بتوانیم روی متن بتوانیم بهتر کار کنیم و هم مهارتمان را تو کد زدن ببریم بالا
حالا من برای شما برنامه ای مینویسم که از طرف یک فرمول میگیره و برای شما محاسبه میکنه.
و این را بدانید وقتی فرمول میدهید برنامه نمیتوانید حساب کند.و اونو به عنوان String میشناسد. و جمع نمیکنه.!!!!!!!
مثلا فرض کنید inputbox باز میشه و کاربر توش مینویسم | 42+1+0+20 |
حالا کدش را چجوری بنویسیم؟؟؟؟؟؟؟ هـــــــــــا نمیگم چون آدم به گوتر میره.
شوخی کردم میگم.
ببنید ما در مرحله اول باید بفهمیم چندتا + داخل فرمول هست که با این دستور میشه
ForMol=inputbox("عدد بزن")
For aa=1 to Len(ForMol)
KK=Mid(ForMol,aa,1)
if Kk ="+" then cc=cc+1
Next aa
خب در اینجا تعداد جمع ها "+" را برنامه محاسبه میکنه و میریزه تو cc
بعدش میره سر مرحله دوم. و باید جمع ها را با split جدا کنیم.
aa=split(ForMol, "+")
For zz=0 to cc-1
ww=ww +aa(zz)
Next zz
Print ww
خب خلاص. این اون چیزی بود که میتوانستم به شما یاد بدهم.
البته اگر میخواهید همینو با #C بنویسید پوستتان را از وجود خلقتتان میکند.