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

Hamada Sayed

الأعضاء
  • المساهمات

    106
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    4

أجوبة بواسطة Hamada Sayed

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

    سبب الخطأ هو انشاء المتغير c كمؤشر واسناد قيم لخصائصه قبل حجز مساحه من الذاكره له

     

    بعد التعديل

    بتاريخ 3 ساعات قال أسماء عبدالله محمود النظاري:
    
    #include<iostream>
    using namespace std;
    
    typedef struct s1
    {
    float r;
    float m;
    }s;
    s *func(s a,s b,s *c)
    {
    cout<<"\npointer\t : "<<c<<"\n*pointer\t : "<<&c;//<<"\n&pointer\t : "<<*c<<endl;
    c->r=a.r+b.r;
    c->m=a.m+b.m;
    return c;
    }
    int main()
    {
        s a,b,c,*result;
        cout<<"\n####################The First Struct###################\n";
            cout<<"number one";cin>>a.r;
            cout<<"number Two";cin>>a.m;
             cout<<"\n####################The Second Struct###################\n";
            cout<<"number one";cin>>b.r;
            cout<<"number Two";cin>>b.m;
            
            result=func( a, b,&c);
            
            cout<<"\n####################The pointer Struct###################\n";
            cout<<"number one = " <<result->r <<endl;
            cout<<"number Two = " <<result->m <<endl;
            return 0;
    }

     

     

  2. مرحبا

    تصحيح الاخطاء

     

    بتاريخ 23 ساعات قال أسماء عبدالله محمود النظاري:
    
    #include <iostream> 
    using namespace std; 
    int i, j; 
    int *print(int **arr, int m, int n) { 
       for (i = 0; i < 3; i++) 
       for (j = 0; j < n; j++) 
          return (int*)((arr+i) + j); 
    } 
    int main() {
    int arr[][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; 
    int m = 3, n = 3; 
    int (*mm)[3]=arr; // We can also use "print(&arr[0][0], m, n);" 
    int *p= print((int**)mm, m, n); 
    for (i = 0; i < 3; i++) 
      for (j = 0; j < n; j++) 
        cout<< (*(p+i*m) + j); 
    return 0;
    }

     

    التصحيح تم باستخدام GCC

    • أعجبني 1
  3. ممكن باستخدام الازاحه لليمين فهي غير معقده علي cpu مثل عمليه القسمه 

    
    #include <iostream>
    
    using namespace std;
    
    
    double sum(int n){
        double total = 0.0;
        
        for (int i = 1; i <= n; i++){
            total = total + (double)(i>>1);
            if (i&1) total+=0.5;
        }
        
        return total;
    }
    
    int main () {
        int n=0;
        
        cout <<"Enter n: ";
        cin >>n;
                            
        cout <<sum(n) <<endl;
        
        return 0;
    }

     

  4. الmask يعطي نتائج جيده دايما

    ربما هناك مشكله في انواع البيانات بمعني انه اثناء اسناد قيمه من متغير حجمه اصغر من المتغير الآخر يجب استخدام الدوال المخصصه لذالك او استخدام الmask

    متغير من نوع byte حجمه يساوي 8bit

    متغير من نوع short حجمه يساوي 16bit

    متغير من نوع int حجمه يساوي 32bit

    متغير من نوع long حجمه يساوي 64bit

     

  5. بتاريخ 57 دقائق مضت قال مروان مروان3:

    ولكن ياليت بس اعرف نقطة منك كيف اعرف سرعة نقل البيانات من خلال الخطة التي اشريها ؟ بماذا يرمز لها ؟

    غير واضح بتفاصيل الخطط في بعض الاستضافات

    اترك السؤال بشكل عام في القسم المخصص وقد تجد اجابه.

    • أعجبني 1
  6. بتاريخ 20 ساعات قال Sameera Abubaker:

    المشكلة هي ان النتيجة صارت  byte array وليست byte

     

    output.jpg

     

    السبب في ذالك هو تمرير متغير من byte لميثود تستقبل متغير من int ولحل المشكله دي نقوم بتحويل الbyte الي int

     

    بتاريخ 6 ساعات قال Hamada Sayed:

     

    
    byte val=(byte)0xa1;
    
    String hex1=Integer.toHexString(Byte.toUnsignedInt(val));
    
    // or
      
    int byte2int=val&255;
    String hex2=Integer.toHexString(byte2int);

     

     

  7. بتاريخ 11 ساعات قال Sameera Abubaker:

    ولكن للاسف لم اجد طريقة لتحويل النص الى بايت لان كل الطرق تؤدي الى byte array  وبالتالي يتم وضع خانات لايجب ظهورها

     

    للتحويل من نص سداسي عشر الي بايت

    byte b1=(byte)Long.parseLong("a1", 16);
    byte b2=(byte)Integer.parseInt("a1", 16);
    byte b3=(byte)Short.parseShort("a1", 16);
    byte b4=(byte)DatatypeConverter.parseHexBinary("a1")[0];

     

    للتحويل من بايت الي نص سداسي عشر

    String h1=Integer.toHexString(Byte.toUnsignedInt((byte)0xa1));
    String h2=String.format("%02x", 0xa1);

     

    • أعجبني 1
  8. بتاريخ 40 دقائق مضت قال مروان مروان3:

    اذا كنت خارج الاكتفتي الرئيسي قم بتمرير الContext كوسيط ثاني للميثود 

    او

    
    public CharSequence getPageTitle(int position, Context ctx){
      ...
        ctx.getResources();
      ...
      }
    
    or
      
    public CharSequence getPageTitle(int position)
      {
      ...
        MainActivity.this.getResources();
      ...
        }

     

     

  9. فيه خطأ منطقي في الكود 

     

    والكود ده بعد التعديل.

    اقتباس
    
     public CharSequence getPageTitle(int position) {
    
            switch (position){
                
               case 0:; //return "Students";
                Resources res = getResources();
                String text = res.getString(R.string.Tital);
                
                return text;
                
                
          case 1:return "teacher";
                
                
           default:return null;
    
    
            }

     

     

     

    • أعجبني 1
  10. بتاريخ On 26‏/6‏/2020 at 23:58 قال ماجد قطوسة:

     

    حل السؤال بلغه cpp

    اقتباس
    
    #include <iostream>
    #include <cmath>
      
    static void printBin(int num, int bitIdx){
      if (bitIdx<0)
        return ;
      
      std::cout<< ((num&(1<<bitIdx))?1:0);
      printBin(num, bitIdx-1);
    }
    
    static void decNum(int num, int bits){
      if (num<0)
        return;
      
      printBin (num, bits-1);  std::cout<<std::endl;
      decNum(num-1, bits);
    }
    
    void MyBinaryValues (double par){
      int bits, power;
      
      if (par<=0.0)
        return;
      
      bits=floor (par);
      power=pow(2, bits)-1;	
      
      decNum(power, bits);
    }
    
    int main(int argc, char **argv){
    	
    	std::cout<<"MyBinaryValues(2.4);"<<std::endl;
    	MyBinaryValues(2.4);
    	
    	std::cout<<std::endl;
    	
    	std::cout<<"MyBinaryValues(3.2);"<<std::endl;
    	MyBinaryValues(3.2);
    	
    	return 0;
    }

     

     

    • أعجبني 1
  11. بتاريخ 7 ساعات قال Ahmed Sawy:

    رجاء ارجو الحل .. طريقة اضافة ال Android SDK ل نت بينز 8.2

     

    netbeans لايدعم android sdk للاصدار 8.2 والاصدارات الاحدث

    اخر دعم كان للاصدار 8.1

    ويمكنك تسطيبه بشكل يدوي

     

  12. مكتبه الffmpeg

    الحل الافضل لبرمجه برنامج مثل البرامج المذكوره

    الffmpeg تم تطويرها بلغه C 

    ولغه C++ هي تطوير للغه C وبالتالي يمكنك تطوير وإنشاء برامج تستخدم مكتبه الffmpeg لتحرير وانشاء الصوت والصوره بلغه C++

    مكتبه الffmpeg خاصه بالStream فقط وليس لها علاقه بالواجه الرسوميه

     

    • أعجبني 1
×
×
  • أضف...