الگوریتم چیست؟!
هر مسعله محاسباتی و کامپیوتری میتواند با یک سری از اعمال اجزایی که به ترتیب اجرا میشوند حل شود.ار روال ها برای حل مساعل کمک گرفته میشود و عبارت :
۱- فعالیت ها از نوع اجرای هستند و
۲- فعالیت ها به ترتیب اجرا میشوند
تعریف الگوریتم میباشد.
مثال:
الگوریتم یک شخص بعد از برخواستن تا رفتن سرکار را توضیح دهید.
۱-برخواسنن از تخت خواب
۲- پوشیدن لباس راحتی
۳-دوش گرفتن
۴- پوشیدن لباس خوردن صبحانه
۵-رفتن به محل کار
سوالی بود :
@prsw16
هر مسعله محاسباتی و کامپیوتری میتواند با یک سری از اعمال اجزایی که به ترتیب اجرا میشوند حل شود.ار روال ها برای حل مساعل کمک گرفته میشود و عبارت :
۱- فعالیت ها از نوع اجرای هستند و
۲- فعالیت ها به ترتیب اجرا میشوند
تعریف الگوریتم میباشد.
مثال:
الگوریتم یک شخص بعد از برخواستن تا رفتن سرکار را توضیح دهید.
۱-برخواسنن از تخت خواب
۲- پوشیدن لباس راحتی
۳-دوش گرفتن
۴- پوشیدن لباس خوردن صبحانه
۵-رفتن به محل کار
سوالی بود :
@prsw16
اجرای ترتیبی :
معمولن عبارات موجود در یک برنامه یکی پس از دیگری و به ترتیبی که نوشته شده اند اجرا میشوند. که به این حالت اجرای ترتیبی میگوید.
معمولن عبارات موجود در یک برنامه یکی پس از دیگری و به ترتیبی که نوشته شده اند اجرا میشوند. که به این حالت اجرای ترتیبی میگوید.
شبه کد :
شبه کد (pseudocode) یک زبان غیر رسمی که به برنامه نویس کمک مکیکنه تا الگوریتم خودشو توسعه بده .
شبه کد (pseudocode) یک زبان غیر رسمی که به برنامه نویس کمک مکیکنه تا الگوریتم خودشو توسعه بده .
اگر بخواهیم در یک محدوده مشخص اعداد تصادفی تولید کنیم چگونه عمل می کنیم؟
مثلا قصد داریم اعداد رندم ما بین 90 تا 100 تولید شود.
پاسخ:
..............................
import java.util.Random;
public class ExJavalike {
public static void main(String[] args) {
Random r = new Random();
int first = 90;
int end = 100;
System.out.println(r.nextInt(end - first) + first);
}
}
...................
در مثال بالا اعداد رندم تولیدی بین 90 تا 100 می باشد.
شما می توانید بازه دلخواه خود را جایگزین دو عدد بالا کنید
مثلا قصد داریم اعداد رندم ما بین 90 تا 100 تولید شود.
پاسخ:
..............................
import java.util.Random;
public class ExJavalike {
public static void main(String[] args) {
Random r = new Random();
int first = 90;
int end = 100;
System.out.println(r.nextInt(end - first) + first);
}
}
...................
در مثال بالا اعداد رندم تولیدی بین 90 تا 100 می باشد.
شما می توانید بازه دلخواه خود را جایگزین دو عدد بالا کنید
🔮معکوس کردن یک عدد در جاوا
مثال: 123--->321
✅پاسخ:
package dot;
import java.util.Scanner;
class Reverse {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
System.out.println("Please Enter the number:");
int num = input.nextInt(); // take argument as command line
int remainder, result = 0;
while (num > 0) {
remainder = num % 10;
result = result * 10 + remainder;
num = num / 10;
}
System.out.println("Reverse number is : " + result);
}
}
مثال: 123--->321
✅پاسخ:
package dot;
import java.util.Scanner;
class Reverse {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
System.out.println("Please Enter the number:");
int num = input.nextInt(); // take argument as command line
int remainder, result = 0;
while (num > 0) {
remainder = num % 10;
result = result * 10 + remainder;
num = num / 10;
}
System.out.println("Reverse number is : " + result);
}
}
تولید 5 عدد رندم(تصادفی) بین 1 تا 100 در جاوا
پاسخ:
class RandomDemo{
public static void main(String args[]){
for(int i=1;i<=5;i++){
System.out.println((int)(Math.random()*100));
}
}
}
..........
پاسخ:
class RandomDemo{
public static void main(String args[]){
for(int i=1;i<=5;i++){
System.out.println((int)(Math.random()*100));
}
}
}
..........
♦️شبه کد زیر را در نظر بگیرید:
if (aNumber >= 0)
if (aNumber == 0)
System.out.println("first string");
else
System.out.println("second string");
System.out.println("third string");
..............................
✳️سوال اول- اگر مقدار aNumber برابر عدد 3 بود خروجی چه میشد؟
✅حل:
second string
third string
if (aNumber >= 0)
if (aNumber == 0)
System.out.println("first string");
else
System.out.println("second string");
System.out.println("third string");
..............................
✳️سوال اول- اگر مقدار aNumber برابر عدد 3 بود خروجی چه میشد؟
✅حل:
second string
third string
تکنولوژی JAVA TV
یکی از تکنولوژی های موجود در جاوا می باشد.اساس Java TV تکنولوژی Java ME می باشد.
تکنولوژی Java TV یک راه حل سازگار،امن و آسان را برای پیاده سازی و توسعه برنامه های کاربردی که قابلیت اجرا در تلوزیون و دستگاه های ستاپ باکس را دارند می باشد.
خب با Java TV چه برنامه هایی را میشه برا تلویزیون نوشت؟!
توسعه دهندگان این تکنولوژی می توانند به راحتی برنامه های کاربردی مانند برنامه راهنما،بازی ها،برنامه آموزشی،و همچنین برنامه های کاربردی که می توانند به داده ها در اینترنت دسرسی پیدا کنند مانند برنامه های هواشناسی،نوارهای اعلام اخبار،شبکه های اجتماعی و...
یکی از تکنولوژی های موجود در جاوا می باشد.اساس Java TV تکنولوژی Java ME می باشد.
تکنولوژی Java TV یک راه حل سازگار،امن و آسان را برای پیاده سازی و توسعه برنامه های کاربردی که قابلیت اجرا در تلوزیون و دستگاه های ستاپ باکس را دارند می باشد.
خب با Java TV چه برنامه هایی را میشه برا تلویزیون نوشت؟!
توسعه دهندگان این تکنولوژی می توانند به راحتی برنامه های کاربردی مانند برنامه راهنما،بازی ها،برنامه آموزشی،و همچنین برنامه های کاربردی که می توانند به داده ها در اینترنت دسرسی پیدا کنند مانند برنامه های هواشناسی،نوارهای اعلام اخبار،شبکه های اجتماعی و...
شاید براتون سوال پیش اومده که جاوا کارت چیه؟!
جاوا ی زبون برنامه نویسی بزرگ و قدرتمندی است که در زمینه های مختلف ازش استفاده شده نظیر برنامه های بانکی،سازمانی،وب،رومیزی،موبایل و...
یکی از کاربردهای جاوا استفاده از آن در نوشتن اپلت ها برای کارت های هوشمند می باشد.
تکنولوژی جاوا کارت اجازه می دهد تا اپلت های نوشته شده به زبان جاوا بر روی کارت های هوشمند اجرا شود.
محیط اجرای جاوا کارت (JCRE) اجرای اپلت های نوشته شده جاوا روی کارت های هوشمند را فراهم می کند.
جاوا ی زبون برنامه نویسی بزرگ و قدرتمندی است که در زمینه های مختلف ازش استفاده شده نظیر برنامه های بانکی،سازمانی،وب،رومیزی،موبایل و...
یکی از کاربردهای جاوا استفاده از آن در نوشتن اپلت ها برای کارت های هوشمند می باشد.
تکنولوژی جاوا کارت اجازه می دهد تا اپلت های نوشته شده به زبان جاوا بر روی کارت های هوشمند اجرا شود.
محیط اجرای جاوا کارت (JCRE) اجرای اپلت های نوشته شده جاوا روی کارت های هوشمند را فراهم می کند.
#مثالی_از_آرایه_ها_در_جاوا
برنامه ای به زبان جاوا بنویسید که بزرگترین و کوچکترین مقدار عناصر درون یک آرایه را پیدا کند.
برنامه ای به زبان جاوا بنویسید که بزرگترین و کوچکترین مقدار عناصر درون یک آرایه را پیدا کند.
Learn Java
#مثالی_از_آرایه_ها_در_جاوا برنامه ای به زبان جاوا بنویسید که بزرگترین و کوچکترین مقدار عناصر درون یک آرایه را پیدا کند.
پاسخ:
package test;
import java.util.Arrays;
public class Exercise10 {
static int max;
static int min;
public static void max_min(int my_array[]) {
max = my_array[0];
min = my_array[0];
int len = my_array.length;
for (int i = 1; i < len - 1; i = i + 2) {
if (i + 1 > len) {
if (my_array[i] > max) max = my_array[i];
if (my_array[i] < min) min = my_array[i];
}
if (my_array[i] > my_array[i + 1]) {
if (my_array[i] > max) max = my_array[i];
if (my_array[i + 1] < min) min = my_array[i + 1];
}
if (my_array[i] < my_array[i + 1]) {
if (my_array[i] < min) min = my_array[i];
if (my_array[i + 1] > max) max = my_array[i + 1];
}
}
}
public static void main(String[] args) {
int[] my_array = {25, 14, 56, 15, 36, 56, 77, 18, 29, 49};
max_min(my_array);
System.out.println(" Original Array: " + Arrays.toString(my_array));
System.out.println(" Maximum value for the above array = " + max);
System.out.println(" Minimum value for the above array = " + min);
}
}
==============
خروجی:
Original Array: [25, 14, 56, 15, 36, 56, 77, 18, 29, 49]
Maximum value for the above array = 77
Minimum value for the above array = 14
===============
package test;
import java.util.Arrays;
public class Exercise10 {
static int max;
static int min;
public static void max_min(int my_array[]) {
max = my_array[0];
min = my_array[0];
int len = my_array.length;
for (int i = 1; i < len - 1; i = i + 2) {
if (i + 1 > len) {
if (my_array[i] > max) max = my_array[i];
if (my_array[i] < min) min = my_array[i];
}
if (my_array[i] > my_array[i + 1]) {
if (my_array[i] > max) max = my_array[i];
if (my_array[i + 1] < min) min = my_array[i + 1];
}
if (my_array[i] < my_array[i + 1]) {
if (my_array[i] < min) min = my_array[i];
if (my_array[i + 1] > max) max = my_array[i + 1];
}
}
}
public static void main(String[] args) {
int[] my_array = {25, 14, 56, 15, 36, 56, 77, 18, 29, 49};
max_min(my_array);
System.out.println(" Original Array: " + Arrays.toString(my_array));
System.out.println(" Maximum value for the above array = " + max);
System.out.println(" Minimum value for the above array = " + min);
}
}
==============
خروجی:
Original Array: [25, 14, 56, 15, 36, 56, 77, 18, 29, 49]
Maximum value for the above array = 77
Minimum value for the above array = 14
===============
✳️میخواستم بدونم چه طوری حروف تکراری رو از یک رشته حذف کنم؟
✅پاسخ ما:
package test;
import java.util.Scanner;
public class Test {
public static String removeDup(String inputString) {
if (inputString.length() < 2)
return inputString;
if (inputString == null)
return null;
char[] inputBuffer = inputString.toCharArray();
String str = new String();
for (int i = 0; i < inputBuffer.length; i++) {
for (int j = i + 1; j < inputBuffer.length; j++) {
if (inputBuffer[i] == inputBuffer[j]) {
inputBuffer[j] = 0;
}
}
}
for (int i = 0; i < inputBuffer.length; i++) {
if (inputBuffer[i] != 0) {
str += inputBuffer[i];
}
}
String result = new String(str);
return result;
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter the String:");
String str = input.next();
System.out.println(removeDup(str));
}
}
..................................
✅پاسخ ما:
package test;
import java.util.Scanner;
public class Test {
public static String removeDup(String inputString) {
if (inputString.length() < 2)
return inputString;
if (inputString == null)
return null;
char[] inputBuffer = inputString.toCharArray();
String str = new String();
for (int i = 0; i < inputBuffer.length; i++) {
for (int j = i + 1; j < inputBuffer.length; j++) {
if (inputBuffer[i] == inputBuffer[j]) {
inputBuffer[j] = 0;
}
}
}
for (int i = 0; i < inputBuffer.length; i++) {
if (inputBuffer[i] != 0) {
str += inputBuffer[i];
}
}
String result = new String(str);
return result;
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter the String:");
String str = input.next();
System.out.println(removeDup(str));
}
}
..................................
✳️صورت سوال: برنامه ای به زبان جاوا بنویسید که یک متد داشته باشد که عملیات زیر را انجام دهد:
تبدیل مبنای 10 به عدد باینری(دودویی)
به این صورت که متد ما یک پارامتر ورودی داره و با صدا زدن و ست کردن متد تبدیل رو انجام
بده!!
🔵مثال: فرض کنید عدد ما در مبنای 10 این مقدار 693 باشد وقتی به مبنای 2 ببریمش می شود
1010110101 یا عدد 4 وقتی به مبنای 2 برده شود میشود 100
.....................
✅پاسخ:
package tutorial;
import java.util.Scanner;
public class Example2 {
public String decimalToBainary(int m) {
String s = new String();
while (m >= 2) {
if (m % 2 == 0) {
s += "0";
m = m / 2;
} else if (m % 2 == 1) {
s += "1";
m = m / 2;
}
}
s += "" + m;
String str = new String();
for (int i = s.length() - 1; i >= 0; i--) {
str += s.substring(i, i + 1);
}
return str;
}
public static void main(String[] args) {
Example2 t = new Example2();
System.out.println(t.decimalToBainary(7));
}
}
...............................
⬇️خروجی:
خروجی این برنامه در محیط کنسول بعد از کامپایل و اجرای برنامه بصورت زیر است:
111
نکته: عدد 111 یک عدد باینری یا دودویی هستش که تنها برای ماشین قابل فهم می باشد و با عدد صد و یازده اشتباه نگیریدش
..................................
تبدیل مبنای 10 به عدد باینری(دودویی)
به این صورت که متد ما یک پارامتر ورودی داره و با صدا زدن و ست کردن متد تبدیل رو انجام
بده!!
🔵مثال: فرض کنید عدد ما در مبنای 10 این مقدار 693 باشد وقتی به مبنای 2 ببریمش می شود
1010110101 یا عدد 4 وقتی به مبنای 2 برده شود میشود 100
.....................
✅پاسخ:
package tutorial;
import java.util.Scanner;
public class Example2 {
public String decimalToBainary(int m) {
String s = new String();
while (m >= 2) {
if (m % 2 == 0) {
s += "0";
m = m / 2;
} else if (m % 2 == 1) {
s += "1";
m = m / 2;
}
}
s += "" + m;
String str = new String();
for (int i = s.length() - 1; i >= 0; i--) {
str += s.substring(i, i + 1);
}
return str;
}
public static void main(String[] args) {
Example2 t = new Example2();
System.out.println(t.decimalToBainary(7));
}
}
...............................
⬇️خروجی:
خروجی این برنامه در محیط کنسول بعد از کامپایل و اجرای برنامه بصورت زیر است:
111
نکته: عدد 111 یک عدد باینری یا دودویی هستش که تنها برای ماشین قابل فهم می باشد و با عدد صد و یازده اشتباه نگیریدش
..................................
✳️صورت سوال: برنامه ای به زبان جاوا بنویسید که یک متد داشته باشد که عملیات زیر را انجام دهد:
تبدیل عدد باینری به مبنای 10(تبدیل از مبنای(binary (2 به 10)
به این صورت که متد ما یک پارامتر ورودی داره و با صدا زدن و ست کردن متد تبدیل رو انجام
بده!!
مثال: فرض کنید عدد باینری ما 1010110101 این مقدار باشد وقتی به مبنای 10 ببریمش می شود
693 یا عدد دودویی 100 وقتی به مبنای 10 برده شود میشود 4
...................................................................................................................................................................................................
✅پاسخ:
package tutorial;
import java.util.Scanner;
public class Example1 {
public int bainaryToDecimal(int a) {
String b = "" + a;
Integer in = new Integer("0");
int j = 0;
int sum = 0;
for (int i = b.length() - 1; i >= 0; i--) {
int d = Integer.parseInt(b.substring(i, i + 1));
sum += (int) (Math.pow(2, j) * d);
j++;
}
return sum;
}
public static void main(String[] args) {
Example1 t = new Example1();
System.out.println(t.bainaryToDecimal(111));
}
}
........................................................................................................................................................
⬇️خروجی: خروجی این برنامه در محیط کنسول بعد از کامپایل و اجرای برنامه بصورت زیر است:
7
تبدیل عدد باینری به مبنای 10(تبدیل از مبنای(binary (2 به 10)
به این صورت که متد ما یک پارامتر ورودی داره و با صدا زدن و ست کردن متد تبدیل رو انجام
بده!!
مثال: فرض کنید عدد باینری ما 1010110101 این مقدار باشد وقتی به مبنای 10 ببریمش می شود
693 یا عدد دودویی 100 وقتی به مبنای 10 برده شود میشود 4
...................................................................................................................................................................................................
✅پاسخ:
package tutorial;
import java.util.Scanner;
public class Example1 {
public int bainaryToDecimal(int a) {
String b = "" + a;
Integer in = new Integer("0");
int j = 0;
int sum = 0;
for (int i = b.length() - 1; i >= 0; i--) {
int d = Integer.parseInt(b.substring(i, i + 1));
sum += (int) (Math.pow(2, j) * d);
j++;
}
return sum;
}
public static void main(String[] args) {
Example1 t = new Example1();
System.out.println(t.bainaryToDecimal(111));
}
}
........................................................................................................................................................
⬇️خروجی: خروجی این برنامه در محیط کنسول بعد از کامپایل و اجرای برنامه بصورت زیر است:
7
پروژه پازل به زبان جاوا (2).zip
637 KB
سورس کد پازل به زبان جاوا
برای استفاده ی شما علاقه مندان (;
برای استفاده ی شما علاقه مندان (;
جاوا به زبان ساده ۲۴
درست کردن متد با پارامتر ها
تو این قسمت از اموزش میخوایم به کار گیری متد ها + پارامتر ها صحب کنیم
توجه: تو این اموزش از دو کلاس استفاده میشه پس باید دو کلاس متفاوت ولی توی یک پروژه بسازید
فرض نام کلاس اول NewClass و فرض نام کلاس دوم Parsa
NewClass:کلاسی هست که متد ها و پارمتر هارو توش تعریف خواهیم کرد
Parsa:کلاسی هست که دارای متد Main هست و کلاس بالایی رو توش فراخونی خواهیم کرد
public class NewClass
{
public void simpleMessage(String name)
{
System.out.println("hello " + name);
}
}
name: پارامتره...از نوع String
چرا String?
خب name عدد نیستش که دوستان
خب حالا میریم توی متد Main
یادتونه گفتم چطوری از کاربرتون input بگیرین؟
import java.util.Scanner;
public class Parsa
{
public static void main (String[] args)
{
Scanner input = new Scanner (System.in);
NewClass object = new NewClass();
System.out.println("Esmet ro vared kon: ");
String name = input.nextLine();
object simpleMessage(name);
}
}
خروجی :
Esmet ro vared kon :
Parsa
hello Parsa
public void simpleMessage(String name):اسم متدمون رو simpleMessage گذاشتیم
و طوری تایین کردیم متد رو که چیزیو برگشت نده..هرگاه void داشته باشه چیزیو برگشت نمیده
String name: اسم پارامتره ماست
Scanner input = new Scanner (System.in); : یه شی از اسکنرمون ساختیم
NewClass object = new NewClass();: کلاس NewClass رو فراخونی کردیم و شی ای به نام object ازش ساختیم
String name = input.nextLine();: یه استرینگ به اسم name ساختیم و طوری تعریفش کردیم که بره لاین بعدی
و در اخر
object simpleMessage(name);: این متد هم از پارامتر name توی کلاس NewClass xاستفاده میکنه
سوالی بود :@prsw16
درست کردن متد با پارامتر ها
تو این قسمت از اموزش میخوایم به کار گیری متد ها + پارامتر ها صحب کنیم
توجه: تو این اموزش از دو کلاس استفاده میشه پس باید دو کلاس متفاوت ولی توی یک پروژه بسازید
فرض نام کلاس اول NewClass و فرض نام کلاس دوم Parsa
NewClass:کلاسی هست که متد ها و پارمتر هارو توش تعریف خواهیم کرد
Parsa:کلاسی هست که دارای متد Main هست و کلاس بالایی رو توش فراخونی خواهیم کرد
public class NewClass
{
public void simpleMessage(String name)
{
System.out.println("hello " + name);
}
}
name: پارامتره...از نوع String
چرا String?
خب name عدد نیستش که دوستان
خب حالا میریم توی متد Main
یادتونه گفتم چطوری از کاربرتون input بگیرین؟
import java.util.Scanner;
public class Parsa
{
public static void main (String[] args)
{
Scanner input = new Scanner (System.in);
NewClass object = new NewClass();
System.out.println("Esmet ro vared kon: ");
String name = input.nextLine();
object simpleMessage(name);
}
}
خروجی :
Esmet ro vared kon :
Parsa
hello Parsa
public void simpleMessage(String name):اسم متدمون رو simpleMessage گذاشتیم
و طوری تایین کردیم متد رو که چیزیو برگشت نده..هرگاه void داشته باشه چیزیو برگشت نمیده
String name: اسم پارامتره ماست
Scanner input = new Scanner (System.in); : یه شی از اسکنرمون ساختیم
NewClass object = new NewClass();: کلاس NewClass رو فراخونی کردیم و شی ای به نام object ازش ساختیم
String name = input.nextLine();: یه استرینگ به اسم name ساختیم و طوری تعریفش کردیم که بره لاین بعدی
و در اخر
object simpleMessage(name);: این متد هم از پارامتر name توی کلاس NewClass xاستفاده میکنه
سوالی بود :@prsw16