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

السؤال

نشر (معدل)
#include<iostream>  
using namespace std;
void printReversed(string str)
{
    int size;
    for (int i = 0; str[i] != '\0'; i++)size = i;
    cout << size;
    for ( int i = size; i >= 0; i--)
    {
        string a;
        cout << str[i]; 
    }
    cout << endl;
}
int main()
{
    string a; cin>>a;
    
    printReversed(a);
    return 0;
}

هذا برنامج يعكس الكلمة المدخلة مثلا mohammed تطبع demmahom, كيف أُنشئ برنامج يقوم بنفس الوظيفة باستخدام المؤشرات

تم التعديل في بواسطة Wael Aljamal
توضيح السؤال

Recommended Posts

  • 0
نشر

مرحبا،

يمكنك تحقيق ذلك (طباعة سلسلة نصية بطريقة معكوسة باستخدام المؤشرات) :

#include<iostream>
#include<string.h> // تضمين مكتبة للتعامل مع السلسل النصية 
  
using namespace std;
// الطباعة المعكوسة
void printReversed(char *c, int n) // استقبال عنوان بداية السلسلة و طولها
{
    char *cc = c + n; // تعريف مؤشر مساعد يدل على نهاية السلسلة
    while (cc >= c)   // طالما لم نصل لبداية السلسلة
    {
        cout << *cc << endl; // نطبع المحرف مكان المؤشر
      	c--; // تحريك المؤشر المساعد لبداية اللسلسة
    }
}
int main()
{
    char s[30];  // تعريف اللسلسة
    cin>> s;  // إدخالها 
    printReversed(s, strlen(s));  // استدعاء التابع ممرين له السلسلة و طولها 
  	//string.h من المكتبة المضمنة strlen تم استدعاء التابع 
    return 0;
}

بالتوفيق

  • 0
نشر
بتاريخ 5 ساعات قال Wael Aljamal:

مرحبا،

يمكنك تحقيق ذلك (طباعة سلسلة نصية بطريقة معكوسة باستخدام المؤشرات) :


#include<iostream>
#include<string.h> // تضمين مكتبة للتعامل مع السلسل النصية 
  
using namespace std;
// الطباعة المعكوسة
void printReversed(char *c, int n) // استقبال عنوان بداية السلسلة و طولها
{
    char *cc = c + n; // تعريف مؤشر مساعد يدل على نهاية السلسلة
    while (cc >= c)   // طالما لم نصل لبداية السلسلة
    {
        cout << *cc << endl; // نطبع المحرف مكان المؤشر
      	c--; // تحريك المؤشر المساعد لبداية اللسلسة
    }
}
int main()
{
    char s[30];  // تعريف اللسلسة
    cin>> s;  // إدخالها 
    printReversed(s, strlen(s));  // استدعاء التابع ممرين له السلسلة و طولها 
  	//string.h من المكتبة المضمنة strlen تم استدعاء التابع 
    return 0;
}

بالتوفيق

شكرا بس بالمناسبة يبدو أنك أخطأت خطأ مطبعي بسيط فهذه الحلقة حلقة لا نهائية والصحيح نغير --c ل--cc

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...