الخوارزمياتدالة إدخال البيانات Read
- التمرين السادس
المطلوب
أكتب برنامج يطلب من المستخدم إعطائه ثلاثة أعداد صحيحة, ثم يقارن الأعداد التي قام المستخدم بإدخالها ثم يخبره فقط من هو العدد الأكبر بينهم.
إرشادات
العدد الأول سنخزنه في المتغير a
.
العدد الثاني سنخزنه في المتغير b
.
العدد الثالث سنخزنه في المتغير c
.
لا تستطيع مقارنة أكثر من عددين دفعة واحدة, لذا عليك مقارنة كل عددين على حدا حتى تصل للعدد الأكبر.
قارن العدد الأول مع العدد الثاني و خزن العدد الأكبر في متغير مؤقت, ثم قارن قيمة المتغير المؤقت مع العدد الثالث.
النتيجة المطلوبة
لنفترض أن المستخدم أدخل الأعداد: 3 و 7 و 2.
طريقة التحليل
الخوارزمية
كود الجافا
import java.util.Scanner; public class Maximum { public static void main (String[] args) { Scanner input = new Scanner(System.in); int a; int b; int c; int max_ab; System.out.print("Enter first number : "); a = input.nextInt(); System.out.print("Enter second number : "); b = input.nextInt(); System.out.print("Enter third number : "); c = input.nextInt(); if ( a > b ) { max_ab = a; } else { max_ab = b; } if ( max_ab > c ) { System.out.print("the maximum is : " +max_ab+ "\n"); } else { System.out.print("the maximum is : " +c+ "\n"); } } }
شرح الكود
int a; int b; int c;
- قمنا بتجهيز المتغيرات
a
وb
وc
لتخزين الأعداد التي سيدخلها المستخدم عند تشغيل البرنامج.
int max_ab;
- المتغير
max_ab
سنستخدمه لاحقاً عند مقارنة الأعداد الثلاثة التي سيدخلها المستخدم. - سنستخدمه فقط لتخزين العدد الأكبر بين أول رقمين يدخلهما المستخدم.
System.out.print("Enter first number : "); a = input.nextInt(); System.out.print("Enter second number : "); b = input.nextInt(); System.out.print("Enter third number : "); c = input.nextInt();
- هنا طلبنا من المستخدم إدخال ثلاث أعداد, و وضعنا هذه الأعداد بالترتيب في المتغيرات
a
وb
وc
.
if ( a > b ) { max_ab = a; } else { max_ab = b; }
- بعد إدخال الأعداد الثلاثة, سيقوم البرنامج بمقارنة أول عددين تم إدخالهما, أي
a
وb
و سيضع العدد الأكبر في المتغيرmax_ab
. - إذا كانت قيمة المتغير
a
أكبر من قيمة المتغيرb
سيتم وضع قيمة المتغيرa
في المتغيرmax_ab
. - إذا كانت قيمة المتغير
a
أصغر أو تساوي قيمة المتغيرb
سيتم وضع قيمة المتغيرb
في المتغيرmax_ab
.
if ( max_ab > c ) { System.out.print("the maximum is : " +max_ab+ "\n"); } else { System.out.print("the maximum is : " +c+ "\n"); }
- في الأخير سيقوم البرنامج بمقارنة العدد الأكبر بين أول عددين مع العدد الأخير, أي سيقارن قيمة المتغير
max_ab
مع قيمة المتغيرc
. - إذا كانت قيمة المتغير
max_ab
أكبر من قيمة المتغيرc
سيعرض للمستخدم أن قيمة المتغيرmax_ab
هي العدد الأكبر. - إذا كانت قيمة المتغير
max_ab
أصغر من قيمة المتغيرc
أو تساويها سيعرض للمستخدم أن قيمة المتغيرc
هي العدد الأكبر.