آموزش برنامه نویسی

آموزشگاه تحلیل داده ارایه دهنده به روز ترین مطالب آموزشی و متدلوژی های برنامه نویسی است که در این زمینه بی رقیب است

آموزش برنامه نویسی

آموزشگاه تحلیل داده ارایه دهنده به روز ترین مطالب آموزشی و متدلوژی های برنامه نویسی است که در این زمینه بی رقیب است

آموزش برنامه نویسی

آموزشگاه تحلیل داده مفتخر به آموزش و برپایی دوره های مقدماتی برنامه نویسی تا سطوح پیشرفته و معماری نرم افزار با بیش از پانزده سال در خدمت جویندگان علم و مهارت آموزان باشد.
آموزشگاه تحلیل داده ارایه دهنده به روز ترین مطالب آموزشی و متدلوژی های برنامه نویسی است که در این زمینه بی رقیب است
شما عزیزان می توانید با خیال آسوده تمرکزی جز اهداف خویش نداشته باشید
دوره های جدید تحلیل داده در راه است.....
برای اطلاع از این دوره ها با شماره 02188146330 یا 02188146323 تماس حاصل نمایید

۲ مطلب با کلمه‌ی کلیدی «اموزش جاوا از صفر» ثبت شده است

سلام با قسمت سوم آموزش جاوا JAVA در خدمت شما عزیزان هستم

در قسمت قبل از آموزش تصویری برنامه نویسی جاوا با متغیرهای جاوا آشنا شدیم

حال با ادامه آموزش جاوا همراه باشید:

آموزش متغیر Double

متغیر double می تواند اعداد خیلی بزرگ (یا کوچک) را در خود داشته باشد. حداکثر و حداقل مقادیر 17 می باشد که با 307 صفر دنبال می شود.

متغیر double برای نگهداری مقادیر ممیزی شناور نیز استفاده می شود. یک مقدار ممیزی شناور عددی مانند 8.7، 12.5، 10.1 و غیره می باشد. به عبارت دیگر این عدد ممیزی در انتها دارد. اگر سعی کنید یک مقدار ممیزی را در یک متغیر int ذخیره کنید، NetBeans زیر کد پیش فرض را خط خواهد کشید. اگر سعی کنید برنامه را اجرا کنید، کامپایلر یک پیغام خطا ارائه می دهد. اجازه بدهید با متغیرهای double کمی تمرین کنیم.

از بخش int را به double تغییر دهید. بنابراین این مورد را نیز تغییر دهید:

int first_number, second_number, answer;

به خط زیر:

double first_number, second_number, answer;

اکنون مقادیر ذخیره شده را تغییر دهید:

first_number = 10.5;

second_number = 20.8;

بقیه ی برنامه را همانطور که هست رها کنید. پنجره ی برنامه نویسی شما باید مشابه زیر باشد:

برنامه ی خود را مجددا اجرا کنید، پنجره ی خروجی باید مانند زیر باشد:

تغییر مقادیر ذخیره شده در first_number و second_number را امتحان کنید. از هر مقداری که تمایل دارید، استفاده کنید. برنامه ی خود را اجرا کرده و نتیجه را مشاهده کنید.

در بخش بعدی در مورد دو نوع متغیر دیگر جاوا فرا خواهید گرفت: short و float.

آموزش Java - آموزش متغیرهای Float و Short

دو نوع متغیر دیگری که می توانید استفاده کنید short و float می باشند. متغیر short برای ذخیره ی اعداد کوچکتر استفاده می شود و دامنه ی آن بین منفی 32768 و مثبت 32767 می باشد. به جای استفاده از int در کد خود مانند صفحات قبل، می توانستیم از متغیر short استفاده کنیم. اگر مطمئن هستید که متغیری را که مخواهید ذخیره کنید، بیشتر از 32767 و کمتر از -32768 نیست، باید فقط از متغیر short استفاده کنید.

متغیر double را که استفاده کردیم، می تواند اعداد ممیزی شناور واقعا بزرگ را ذخیره کند. به جای استفاهد از double، متغیر float نیز می تواند استفاده شود. هنگام ذخیره ی یک مقدار در یک متغیر float، نیاز به حرف f در انتهای آن دارید. مانند مورد زیر:

float first_number, second_number, answer;‎

first_number = 10.5f;

second_number = 20.8f;‎

بنابراین حرف f بعد از عدد اما قبل از نقطه ویرگول در انتهای خط قرار می گیرد. برای مشاهده ی تفاوت بین float و double مورد زیر را بررسی کنید.

حساب ساده ( Simple Arithmetic) با متغیرهایی که استفاده کرده اید، می توانید از نمادهای زیر نیز برای انجام محاسبت استفاده کنید: + (علامت جمع) _ (علامت منفی) *(علامت ضرب که یک ستاره است.) / (علامت تقسیم که یک اسلش رو به جلو می باشد.) این تمرین را امتحان کنید: علامت جمع را که برای اضافه کردن first_number و second_numberاستفاده می شود، حذف کنید. آن را با نمادهای بالا جایگزین کنید، ابتدا علامت منفی، سپس علامت ضرب و در نهایت علامت تقسیم. پاسخ به مورد آخر، تقسیم، باید یک عدد واقعا بزرگ به شما ارائه دهد. عددی که باید برای تقسیم ارائه دهید 0.5048076923076923 می باشد. این به این دلیل است که شما از متغیر نوع double استفاده کرده اید. به هرحال double را به float تغییر دهید. سپس حرف f را به انتهای اعداد اضافه کنید. بنابراین کد شما باید مانند زیر باشد:

وقتی که کد بالا را اجرا می کنید، اکنون پاسخ 0.5048077 می باشد. جاوا 6 عدد اول بعد از ممیز را گرفته و سپس بقیه را گرد کرده است. ( double یک عدد 64 بیتی است و float فقط 32 بیتی می باشد.)

در بخش بعد در مورد اهمیت Operator Precedence فرا خواهید گرفت.

آموزش Java - آموزش اولویت عمگرها

البته که شما می توانید با بیشتر از دو عدد در جاوا محاسبه کنید. اما باید مراقب آنچه قرار است محاسبه شود، باشید. مورد زیر را به عنوان مثال در نظر بگیرید:

first_number = 100;

second_number = 75;

third_number = 25;

answer = first_number - second_number + third_number;

اگر محاسبه را از سمت چپ به راست انجام داده باشید، 75-100 می شود که پاسخ 25 است. سپس عدد سوم را که 25 است اضافه کنید. مجموع 50 خواهد بود. به هرحال اگر مد نظر شما این نباشد چطور؟ اگر تمایل داشته باشید اعداد دوم و سوم را با هم اضافه کنید و سپس مجموع را از اولین عدد کسر کنید، چطور؟ بنابراین 25+75 است که پاسخ 100 می باشد. سپس آن را از اولین عدد کسر کنید که 100 می باشد. اکنون مجموع 0 خواهد بود.

برای اطمینان از اینکه جاوا کاری را انجام می دهد که شما می خواهید، می توانید از آکولا استفاده کنید. بنابراین اولین محاسبه مانند زیر خواهد بود:

answer = (first_number - second_number) + third_number;

این پنجره ی برنامه نویسی می باشد، بنابراین می توانید آن را امتحان کنید:

محاسبه دوم نیز به این شکل می باشد:

answer = first_number - (second_number + third_number);

پنجره ی کد آن را نیز در اینجا مشاهده می کنید:

اکنون اجازه بدهید چند عمل ضرب و جمع را امتحان کنیم.

نمادهای ریاضی خود را به (که اپراتور نامیده می شوند) به جمع و ضرب تبدیل کنید:

answer = first_number + second_number * third_number;

تمام آکولادها را حذف کرده و سپس برنامه ی خود را اجرا کنید.

بدون آکولا تصور می کنید که Java از چپ به راست محاسبه را انجام می دهد. بنابراین تصور می کنید که عدد اول را به عدد دوم اضافه می کند تا 175 به دست آورد. سپس تصور می کنید که در عدد سوم ضرب می شود که 25 می باشد. بنابراین پاسخ 4375 خواهد بود. سپس برنامه را اجرا کنید. پاسخ حقیقی را که شما به دست می آورید 1975 می باشد. پس جریان چیست؟

دلیل اینکه جاوا پاسخ اشتباه ارائه می دهد Operator Precedence است. جاوا برخی از نمادهای ریاضی را مهم تر از بقیه در نظر می گیرد. این برنامه ضرب را مقدم به جمع می داند، بنابراین عملیات ضرب را قبل از جمع انجام می دهد، سپس جمع را انجام می دهد. بنابراین جاوا در حال انجام عملیات زیر می باشد:

answer = first_number + (second_number * third_number);

با قرار دادن آکولادها در جای درست مشاهده می کنید که عدد دوم در عدد سوم ضرب شده است. سپس مجموع به اولین عدد اضافه می شود. بنابراین حاصل 75 در 25 عدد 1875 می باشد. عدد 100 را اضافه کنید، که 1975می باشد.

اگر آن را به روش دیگری می خواهید، فراموش نکنید که با استفاده از آکولادها به جاوا اعلام کنید:

answer = (first_number + second_number) * third_number;

تقسیم مشابه ضرب می باشد: جاوا ابتدا تقسیم را انجام می دهد وسپس جمع و یا تفریق را. خط پاسخ خود را به شکل زیر تغییر دهید:

answer = first_number + second_number / third_number;

پاسخی که به دست می آورید 103 می باشد. اکنون چند آکولاد اضافه کنید:

answer = (first_number + second_number) / third_number;

پاسخ این بار 7 خواهد بود. بنابراین بدون آکولادها، جاوا ابتدا تقسیم را انجام می دهد و سپس 100 را به مجموع اضافه می کند – این عملکرد از چپ به راست کار نمی کند.

در اینجا لیستی از Operator Precedence را مشاهده می کنید:

ضرب و تقسیم – به طور مساوی رفتار می شوند، اما نسبت به جمع و تفریق دارای اولویت هستند. جمع و تفریق – به طور مساوی رفتار می شوند اما نسبت به ضرب و تقسیم اولویت پایین تری دارند. بنابراین اگر فکر می کنید که جاوا پاسخ اشتباه به شما می دهد، به یاد داشته باشید که Operator Precedence مهم می باشد و چند آکولاد اضافه می کند. در قسمت بعدی به چگونگی ذخیره ی مقادیر با استفاده از Java نگاهی خواهیم داشت.

پایان بخش سوم آموزش برنامه نویسی JAVA

این آموزش ادامه دارد

۰ نظر موافقین ۰ مخالفین ۰ ۱۰ دی ۹۸ ، ۱۶:۰۵
افشین رفوا
سلام با قسمت چهارم آموزش جاوا JAVA در خدمت شما عزیزان هستم
در قسمت قبل از آموزش تصویری برنامه نویسی جاوا با متغیر Double و اولویت عمگرها آشنا شدیم
حال با ادامه آموزش جاوا همراه باشید:
آموزش متغیر String در جاوا
همانند ذخیره ی مقادیر عددی، متغیرها می توانند متن را در خود حفظ کنند. شما میتوانید تنها یک کاراکتر یا چندید کاراکتر را ذخیره کنید. برای ذخیره ی تنها یک کاراکتر، متغیر char استفاده می شود. گرچه معمولا تمایل دارید بیشتر از یک کاراکتر را ذخیره کنید. برای انجام این کار نیاز به متغیر نوع رشته ای دارید.
حال یک برنامه در محیط NetBeans می نویسیم , البته شما می تونید همین کد ها را در محیط IntelliJ IDEA
که در قسمت اول آموزش دیدید اجرا کنید

 

با کلیک کردن بر روی File > New Project از نوار منو در بالای NetBeans، یک پروژه ی جدید را آغاز کنید. وقتی دیالوگ باکس New Project ظاهر می شود، اطمینان حاصل کنید که آموزش Java و Java Application انتخاب شده اند:
 
روی Next کلیک کرده و StringVars را با عنوان نام پروژه تایپ کنید. اطمینان حاصل کنید که در قسمت Create Main Class یک تیک وجود دارد. سپس Main را پس از stringvars حذف کرده و در عوض StringVariables را تایپ کنید، مانند تصویر زیر:
 
بنابراین نام پروژه StringVars است و نام گروه نیز StringVariables می باشد. روی دکمه ی Finish کلیک کنید، پنجره ی برنامه نویسی شما مانند تصویر زیر خواهد بود ( ما تمام کامنت های پیش فرض را حذف کرده ایم.) دقت داشته باشید که تمام حروف مربوط به نام پوشه با حروف کوچک نوشته شده اند(stringvars)، اما نام پروژه StringVars می باشد.
 
برای برقراری یک متغیر string ، لغت String را تایپ کنید که پس از آن نام متغیر قرار می گیرد. توجه داشته باشید که در لغت String حرف S بزرگ نوشته شده است. مجددا خط با یک نقطه ویرگول به پایان می رسد:
String first_name;
با تایپ کردن یک علامت تساوی، یک مقدار جدید را به متغیر string خود اختصاص دهید. پس از علامت تساوی متنی را که می خواهید ذخیره کنید، بین دو علامت نقل قول (") قرار می گیرد:
first_name = "William";
اگر ترجیح می دهید، می توانید تمام آن را در یک خط داشته باشید:
String first_name = "William";
متغیر دوم string را برقرار کنید تا یک نام یا نام خانوادگی را حفظ کنید:
String family_name = "Shakespeare";
برای اینکه هر دو نام را چاپ کنید، println( ) زیر را اضافه کنید:
System.out.println( first_name + " " + family_name );
در بین آکولادهای println عبارت زیر را داریم:
first_name + " " + family_name
هر آنچه در متغیر به نام first_name وجود دارد، نسخه ی چاپی (print out) می نامیم. پس از آن یک علامت به علاوه وجود دارد که با یک فاصله دنبال می شود. این فاصله بین علامت های نقل قول احاطه شده است. به این روش جاوا در می یابد که ما قصد چاپ یک کاراکتر فاصله (space character) را داریم. پس از فاصله یک علامت به علاوه ی دیگر وجود دارد که با متغیر family_name دنبال می شود.
 
گرچه این مسئله کمی گیج کننده به نظر می رسد، اما ما فقط در حال چاپ یک نام، یک فاصله و سپس نام خانوادگی هستیم. پنجره ی برنامه نویسی شما باید مانند تصویر زیر به نظر برسد:
برنامه ی خود را اجرا کنید و پس از آن در پنجره ی Output تصویر زیر مشاهده خواهید کرد:
 
 
اگر شما در حال ذخیره ی تنها یک کاراکتر مجزا هستید، متغیر مورد نیاز شما char ( با حرف کوچک) می باشد. برای ذخیره ی کاراکتر از علامت نقل قول (‘) به جای (“) استفاده می کنید. در اینجا مجددا برنامه را مشاهده می کنید، اما این بار با متغیر char:
اگر سعی کنید یک متغیر char را با علامت نقل قول جفت (“) ذخیره کنید، NetBeans زیر کد ناسازگار با قرمز خط خواهد کشید و خطای نوع ناسازگار (incompatible type) ارائه خواهد داد. به هرحال شما می توانید یک متغیر String تنها با یک کاراکتر مجزا داشته باشید. اما به علامت نقل قول دوگانه (“) نیاز دارید. بنابراین این مورد درست می باشد:
String first_name = "W";
اما مورد زیر درست نمی باشد:
String first_name = 'W';
ورژن دوم دارای یک علامت نقل قول مجزا می باشد، در حالیکه مورد اول دارای علامت نقل قول دوگانه (“) می باشد.
موارد بیشتری در مورد string ها وجود دارد و بعدها مجددا آنها را مشاهده خواهید کرد. اکنون اجازه دهید ادامه داده و چند ورودی از یوزر دریافت کنیم.
آموزش دریافت ورودی از کاربر
یکی از نقاط قوت Java، وجود کتابخانه های عظیمی از کدهای موجود برای شما می باشد. برای انجام کارهای خاص کدهایی نوشته شده است. تمام آنچه باید انجام دهید ارجاع به کتابخانه ی مورد نظر و سپس فراخوانی متد می باشد. گروه واقعا مفیدی که ورودی یک یوزر را کنترل می کند، گروه Scanner نامیده می شود. این گروه در کتابخانه ی java.util یافت می شود. برای استفاده از گروه Scanner لازم است به آن گروه در کد خود ارجاع کنید. این کار با لغت کلیدی import انجام می شود.
import java.util.Scanner;
عبارت import لازم است بالای عبارت عبارت Class قرار بگیرد.
import java.util.Scanner;
public class StringVariables {
}
این عبارت به جاوا می گوید که می خواهید از یک گروه خاص در یک کتابخانه ی خاص استفاده کنید – گروه Scanner که در java.util واقع شده است.

 

کار دیگری که باید انجام دهید ایجاد یک آبجکت از گروه Scanner می باشد. (یک گروه در واقع دسته ای از کدهاست. این کد تا زمانیکه یک آبجکت جدید از آن ایجاد نکنید، کاری انجام نمی دهد.)
برای ایجاد یک آبجکت Scanner جدید، کد مورد نیاز را در زیر مشاهده می کنید:
Scanner user_input = new Scanner( System.in );
عبارت import لازم است بالای عبارت عبارت Class قرار بگیرد.
import java.util.Scanner;
public class StringVariables {
}
این عبارت به جاوا می گوید که می خواهید از یک گروه خاص در یک کتابخانه ی خاص استفاده کنید – گروه Scanner که در java.util واقع شده است.
کار دیگری که باید انجام دهید ایجاد یک آبجکت از گروه Scanner می باشد. (یک گروه در واقع دسته ای از کدهاست. این کد تا زمانیکه یک آبجکت جدید از آن ایجاد نکنید، کاری انجام نمی دهد.)
برای ایجاد یک آبجکت Scanner جدید، کد مورد نیاز را در زیر مشاهده می کنید:
Scanner user_input = new Scanner( System.in );
بنابراین به جای متغیر int یا یک متغیر String ، در حال تنظیم یک متغیر Scanner می باشیم، که مورد ما user_input نامیده می شود. پس از یک علامت تساوی لغت کلیدی new را داریم که برای ایجاد آبجکت های جدید از یک گروه استفاده می شود. آبجکتی که در حال ایجاد آن هستیم از گروه Scanner می باشد. در بین آکولادها باید به جاوا اعلام کنید که از System Input (System.in) خواهد بود.
برای گرفتن ورودی یوزر، می توانید یکی از چندین متد موجود را در آبجکت جدید Scanner وارد عمل کنید. یکی از این متدها next نامیده می شود. این متد رشته ی بعدی متن را که یک یوزر روی صفحه کلید تایپ می کند، دریافت می کند:
String first_name;
first_name = user_input.next( );
بنابراین پس از آبجکت user_input یک نقطه تایپ می کنیم. سپس لیستی از متدهای موجود مشاهده خواهید کرد. روی next دابل کلیک کنید و سپس در انتهای خط یک نقطه ویرگول تایپ کنید. برای به جلو بردن یوزر می توانیم متن نیز تایپ کنیم:
String first_name;
System.out.print("Enter your first name: ");
first_name = user_input.next( );
دقت داشته باشید که مانند قبل از print به جای println استفاده می کنیم. تفاوت بین این دو این است که println پس از خورجی مکان نما را به یک خط جدید حرکت می دهد، اما print روی همان خط می ماند.
یک پیشروی برای نام خانوادگی نیز وارد می کنیم:
String family_name;
System.out.print("Enter your family name: ");
family_name = user_input.next( );
این همان کد است به جز اینکه اکنون جاوا هرآنچه را یوزر در قسمت متغیر family_name به جای متغیر first_name تایپ می کند، ذخیره می کند.
برای چاپ ورودی می توانیم مورد زیر را اضافه کنیم:
String full_name;
full_name = first_name + " " + family_name;
System.out.println("You are " + full_name);
یک متغیر String دیگر با عنوان full_name تنظیم می کنیم و هر آنچه در متغیرهای first_name و family_name است را ذخیره می کنیم. در بین این دو یک فاصله قرار می دهیم. خط آخر همه ی آن را در پنجره ی Output چاپ خواهد کرد.
بنابراین کد خود را طوری تطبیق دهید تا با تصویر بعدی هماهنگی داشته باشد:
 
برنامه ی خود را اجرا کنید تا اینکه پنجره ی Output تصویر زیر را نمایش دهد:
 
اکنون جاوا متوقف شده تا اینکه در صفحه کلید چیزی وارد کنید، و تا زمانیکه دکمه ی Enter صفحه کلید را فشار ندهید، پیشرفتی رخ نخواهد داد. بنابراین بعداز "Enter your first name:" را کلیک چپ کنید، مشاهده خواهید کرد که مکان نمای شما محو خواهد شد. یک نام تایپ کنید و سپس دکمه ی enter را فشار دهید.
پس از فشردن دکمه ی enter، جاوا هر آنچه را که در سمت چپ علامت تساوی در متغیر نام تایپ و ذخیره شده، خواهد گرفت. در مورد ما این متغیر first_name نامیده می شد.
سپس برنامه وارد خط بعدی کد می شود:
 
یک نام خانوادگی تایپ کرده و سپس مجددا دکمه ی Enter را فشار دهید:
 
اکنون ورودی یوزر به پایان رسیده است و بقیه ی برنامه اجرا می شود. این خروجی هردو نام می باشد. نتیجه ی نهایی باید مشابه تصویر زیر باشد:
 
بنابراین ما از گروه Scanner برای گرفتن ورودی از یک یوزر استفاده می کنیم. هر آنچه تایپ شد در متغیرها ذخیره شد. نتیجه نیز در پنجره ی Output چاپ شد. در بخش بعدی نگاه کوتاهی به Option Panes خواهیم داشت.
پایان قسمت چهارم آموزش جاوا
دوره آموزش برنامه نویسی JAVA ادامه دارد
 



۰ نظر موافقین ۰ مخالفین ۰ ۱۰ دی ۹۸ ، ۱۶:۰۲
افشین رفوا