اذهب إلى المحتوى

السؤال

نشر (معدل)

Get the string as input from the user Split the string into characters Push these characters into a stack one by one until the string is finished Pop from stack one by one and put it in another character array/string Display the contents of the new character array/string

تم التعديل في بواسطة Mustafa Suleiman
تعديل عنوان السؤال

Recommended Posts

  • 0
نشر

بما أن السؤال خاص بمشروع أو سؤال إمتحاني يتم ذكر الخطوات فقط، ويمكن مساعدتك في الكود إذا تم توفيره أو جزء منه.

هذه هي الخطوات المطلوبة لحل السؤال باستخدام جافاسكريبت:

  1. استخدم دالة prompt() للحصول على النص الذي يدخله المستخدم.
  2. استخدم دالة split() لتحويل النص إلى مصفوفة من الأحرف.
  3. أنشئ متغيرًا جديدًا لتخزين المحتوى الذي تم إدخاله من المستخدم بطريقة معكوسة. يمكن القيام بذلك عن طريق استخدام الدالة push() لإضافة الحروف إلى الستاك ومن ثم استخدام دالة pop() لإزالة الحروف من الستاك ووضعها في المصفوفة.
  4. استخدم دالة join() لتحويل المصفوفة إلى سلسلة جديدة.
  5. استخدم دالة alert() أو console.log() لعرض النتيجة للمستخدم.

مثال لأول خطوتين:

// الخطوة 1
let inputString = prompt("أدخل نصاً:");

// الخطوة 2
let charArray = inputString.split("");

 

  • 0
نشر
class Main{ static void reverse(String s) { Stack stc = new Stack<>(); String temp = ""; for(int i = 0; i < s.length(); i++) { if(s.charAt(i) == ' ') { stc.add(temp); temp = ""; } else { temp = temp + s.charAt(i); } } stc.add(temp); while(!stc.isEmpty()) { temp = stc.peek(); System.out.print(temp + " "); stc.pop(); } System.out.println(); } public static void main(String[] args) { String s = ""; reverse(s); } }

من فضلك هكذا،؟؟

  • 0
نشر

أحسنتي بالمحاولة، هناك بعض الأخطاء، الكود الذي قمتي بكتابته يقوم بتعكيس الكلمات في النص، وليس بتنفيذ الخطوات التي ذكرتها.

لذلك، سنحتاج لتعديل الكود لتنفيذ الخطوات المذكورة، كالتالي باستخدام لغة جافا:

import java.util.*;

class Main {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.print("Enter a string: ");
    String s = input.nextLine();
    
    Stack<Character> stack = new Stack<>();
    for (int i = 0; i < s.length(); i++) {
      stack.push(s.charAt(i));
    }
    
    String reversedString = "";
    while (!stack.empty()) {
      reversedString += stack.pop();
    }
    
    System.out.println("Reversed string: " + reversedString);
  }
}

يتم استخدام Scanner للحصول على النص الذي تم إدخاله من المستخدم، و تقسيم النص إلى حروف وإضافتها إلى الستاك. ثم يتم إنشاء StringBuilder لإنشاء النص الجديد المعكوس بعد ذلك يتم إزالة الحروف وإضافتها إلى StringBuilder. أخيراً طباعة النص الجديد المعكوس.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...