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

السؤال

نشر (معدل)

السلام عليكم..

من فضلِكُم، أطلُبُ المساعدة في حل هذا السؤالِ _إنْ أَمْكَنْ_ وشكراً جزيلاً لًكُمْ..

كتابة كود برمجي بلغة C قوم بعد تكرار الأحرف ويرسم histogram 

أكاديمية حسوب.PNG

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

Recommended Posts

  • 0
نشر

أستطيع مساعدتك بكتابة الشيفرة بلغة ++C وعليك تحويل الأفكار والشيفرة للغة C

  • علينا استخدام مكتبة للتعامل مع الملفات.
  • تعريف مصفوفة بطول 26 من نوع int لنقوم بعد تكرار الأحرف فيها
  • استخدام الحلقات والتحويل بين المحارف (القصر) 
  • إن المحرف الذي يستخدم لرسم مربع أبيض مصمت هو 254u 
  • سوف نزيد تكرار الحرف الأبجدي حسب ترتيبه في اللغة و بالاعتماد على قيمته الرقمية في جدول ASCII:
     hist [ myText[i] - 'a' ] ++;

    حيث بعد ناتج طرح محرفين، إن كان محرف النص a سوف يكون ناتج الطرح 0 فنزيد 1 بالخانة الأولى من المصفوفة وأما b سيكون 1 و نزيد في الخانة الثانية وهكذا...

أرجو محاولة كتابة الشيفرة البرمجية قبل رؤية الحل:

.

.

#include <iostream>
#include <fstream>

using namespace std;

int hist[26];

int main()
{

    string myText;
    ifstream MyReadFile("story.txt");

    while (getline (MyReadFile, myText))
    {
        for (int i=0; i<myText.length(); i++)
        {
            hist [ myText[i] - 'a' ] ++;
        }
    }

    MyReadFile.close();


    cout << "Histogram of Alphabet count\n";


    for (int i = 0; i < 26; i++)
    {
        cout << char('a' + i) << "| ";
        int c = hist[i];
        for (int j = 0; j < c; j++)
        {
            cout << (char)254u;
        }
        cout << "\n";
    }
}

 

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...