الخوارزمياتدالة إدخال البيانات 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هي العدد الأكبر.