C/C++

  • Креатор на темата Креатор на темата Драган
  • Време на започнување Време на започнување
Малце си контрадикторна.
Не сум контрадикторна. Не барам ready made код, барам насока. Кој дел со каква функција би можел да се опфати, предлози околу манипулацијата со бројки.
Нема везе.
 
не да се фалам али дечки предходниот викенд сабота недела фулл учење вежбање, еден другар ми помогна и 4 на тестот добив :):P:D:pipi:

Не дека сакам да ти кажувам како иде или нешто али ... Ц++ за еден ден нема да научиш ме разбираш ? Најдобронамерно ти кажувам да почнеш од структури и класи основни задачи да видиш како работат конструкторите и деструкторите и да пишуваш функции да задаваш парамерти и слично.
Ако ти треба помош побарај тука може да ти се помогне со едноставни задачи кои сигурно ви ги даваат , претпоставувам дека си средно по тоа дека спомнуваш 4ки :D И мило ми е што ве учат , ние немавме Ц++ , само Паскал, крш човеку.
Скрши нога (y)[DOUBLEPOST=1397672862][/DOUBLEPOST]
Не сум контрадикторна. Не барам ready made код, барам насока. Кој дел со каква функција би можел да се опфати, предлози околу манипулацијата со бројки.
Нема везе.

АОК проект правиш и ако ДА кој ? :)
 
Не дека сакам да ти кажувам како иде или нешто али ... Ц++ за еден ден нема да научиш ме разбираш ? Најдобронамерно ти кажувам да почнеш од структури и класи основни задачи да видиш како работат конструкторите и деструкторите и да пишуваш функции да задаваш парамерти и слично.
Ако ти треба помош побарај тука може да ти се помогне со едноставни задачи кои сигурно ви ги даваат , претпоставувам дека си средно по тоа дека спомнуваш 4ки :D И мило ми е што ве учат , ние немавме Ц++ , само Паскал, крш човеку.
Скрши нога (y)[DOUBLEPOST=1397672862][/DOUBLEPOST]

АОК проект правиш и ако ДА кој ? :)
За CRC очигледно XD
 
Кој дел со каква функција би можел да се опфати, предлози околу манипулацијата со бројки.

Еве насока може да ја разбиеш логиката на повеќе функции, пример основна за XOR на карактери

Код:
char xor(char a, char b)
{
    return (char)(((int)a-48) ^ ((int)b-48) + 48);
}

После за XOR на полиња од карактери

Код:
char* xorArray(char* a, char* b)
{
    int size = sizeof(a)/sizeof(a[0]);

    char c;
    char* result;
    for (int i=0; i < size; i++)
    {
        c = xor(a[i], b[i]);
        result[i] = c;
    }

    return result;
}

Друга помошна функција може да ти биде

Код:
char* otstraniNuliNaPocetok(char* a, int delitelDolzina)
{
    char* filteredResult;
    int otstranetiNuli = 0;
    bool otstranuvanjeZavrseno = false;
    for (int r=0; r < delitelDolzina; r++){

        if ((a[r] == '0')&&(!otstranuvanjeZavrseno))
            otstranetiNuli++;

        if (a[r] == '1')
            otstranuvanjeZavrseno = true;

        if (otstranuvanjeZavrseno)
            filteredResult[r - otstranetiNuli] = a [r];
    }
}

После ги искористуваш во поголема логичка целина наречена crc

Код:
void crc(char* delenik, char* delitel)
{
    int delitelDolzina = sizeof(delitel)/sizeof(delitel[0]);//dolzina na delitelot
    int delenikDolzina = sizeof(delenik)/sizeof(delenik[0]);//dolzina na delenikot

    int brojNaBitoviStoTrebaDaSeDodadat = delitelDolzina;//inicijlano dodavame kolku sto ima dozlina delitelot
    for (int i=0; i< (delenikDolzina - delitelDolzina); i++)
    {
        char* delenikDel;

        for (int j = 0; j < brojNaBitoviStoTrebaDaSeDodadat; j++){
            delenikDel[j] = delenik[j+i];   
        }

        //napravi Xor na dvete polinja
        char* result = xorArray(delenikDel, delitel);

        //otstrani gi nulite od pocetokot
        char* filteredResult = otstraniNuliNaPocetok(result, delitelDolzina);

        int ostatokDolzina = sizeof(filteredResult)/sizeof(filteredResult[0]);//dolzina na ostatokot

        brojNaBitoviStoTrebaDaSeDodadat = delitelDolzina - ostatokDolzina;
    }
}

И така натаму.
 
Еве насока може да ја разбиеш логиката на повеќе функции, пример основна за XOR на карактери

Код:
char xor(char a, char b)
{
    return (char)(((int)a-48) ^ ((int)b-48) + 48);
}

После за XOR на полиња од карактери

Код:
char* xorArray(char* a, char* b)
{
    int size = sizeof(a)/sizeof(a[0]);

    char c;
    char* result;
    for (int i=0; i < size; i++)
    {
        c = xor(a[i], b[i]);
        result[i] = c;
    }

    return result;
}

Друга помошна функција може да ти биде

Код:
char* otstraniNuliNaPocetok(char* a, int delitelDolzina)
{
    char* filteredResult;
    int otstranetiNuli = 0;
    bool otstranuvanjeZavrseno = false;
    for (int r=0; r < delitelDolzina; r++){

        if ((a[r] == '0')&&(!otstranuvanjeZavrseno))
            otstranetiNuli++;

        if (a[r] == '1')
            otstranuvanjeZavrseno = true;

        if (otstranuvanjeZavrseno)
            filteredResult[r - otstranetiNuli] = a [r];
    }
}

После ги искористуваш во поголема логичка целина наречена crc

Код:
void crc(char* delenik, char* delitel)
{
    int delitelDolzina = sizeof(delitel)/sizeof(delitel[0]);//dolzina na delitelot
    int delenikDolzina = sizeof(delenik)/sizeof(delenik[0]);//dolzina na delenikot

    int brojNaBitoviStoTrebaDaSeDodadat = delitelDolzina;//inicijlano dodavame kolku sto ima dozlina delitelot
    for (int i=0; i< (delenikDolzina - delitelDolzina); i++)
    {
        char* delenikDel;

        for (int j = 0; j < brojNaBitoviStoTrebaDaSeDodadat; j++){
            delenikDel[j] = delenik[j+i];  
        }

        //napravi Xor na dvete polinja
        char* result = xorArray(delenikDel, delitel);

        //otstrani gi nulite od pocetokot
        char* filteredResult = otstraniNuliNaPocetok(result, delitelDolzina);

        int ostatokDolzina = sizeof(filteredResult)/sizeof(filteredResult[0]);//dolzina na ostatokot

        brojNaBitoviStoTrebaDaSeDodadat = delitelDolzina - ostatokDolzina;
    }
}

И така натаму.
Фала! Ќе ми се најдат :)))
 
Не дека сакам да ти кажувам како иде или нешто али ... Ц++ за еден ден нема да научиш ме разбираш ? Најдобронамерно ти кажувам да почнеш од структури и класи основни задачи да видиш како работат конструкторите и деструкторите и да пишуваш функции да задаваш парамерти и слично.
Ако ти треба помош побарај тука може да ти се помогне со едноставни задачи кои сигурно ви ги даваат , претпоставувам дека си средно по тоа дека спомнуваш 4ки :D И мило ми е што ве учат , ние немавме Ц++ , само Паскал, крш човеку.
Скрши нога (y)[DOUBLEPOST=1397672862][/DOUBLEPOST]

АОК проект правиш и ако ДА кој ? :)
значи со другаров седнување два дена фулл ете 4 извадив коа се сака се може де :P иначе ц++ отиде више сеа почнав табеларно пресметување :така да аидос ++ :D
во секој случај фала многу за понудената помош ! :)
 
BusHav може ли да ми дадеш линк од твојот фб за да поразговараме во врска со C++
 
Здраво,

Ми треба помош околу алгоритам за проверка/поправање на грешки во Хамингов код. Дадена е кодирана порака со минимално растојание 4 (последниот бит е бит за парност)
На пример, позиција 0 во една низа е контролен бит кој ги контролира позициите 2, 4, 6, 8... (check one, skip one)
потоа, позиција 1 е контролен бит кој ги контролира 2, 5, 6, 9, 10... (check two, skip two),
потоа, позиција 3 е контролен, ги контролира 4, 5, 6, 11, 12, 13, 14... (check four, skip four) итн....
Кодираната порака е со неодредена должина! па за тоа потребен ми е универзален алгоритам кој ќе се движи низ контролни позиции и ќе пресметува онолку битови колку што се потребни (според позицијата).
Има некој идеја како ќе се движиме низ контролните позиции со циклус(и)?

Фала.
 
Зошто кога внесувам subject да речеме, ако внесам празно место, тоа после празното место ми го префрла на text? Еве дел од кодот.
Ако внесам да речеме zbor_zbor, си останува целото во subject, а ако внесам zbor zbor, второто zbor се префрла у text и завршува програмата.
C++

Код:
cout<< "To:" << endl;
    cin >> to;
    if (checkmail (to)) {
        email.setTo(to);
       cout << "Sub:" << endl;
    cin >> sub;
    email.setSub (sub);
    cout << "Text:" << endl;
    cin >> text;
    email.setText (text);
    }
    else {
        cout << "Nevalidna TO e-mail adresa" << endl;
    return 0;
 
Може некој да ми каже што би можела да биде грешката? Барав нешто на google, ама ништо конкретно не ми помогна ...

subscripted value is neither array nor pointer nor vector

во овој ред ми дава:
Код:
registers[reg][i]=value[reg][i];
Се работи за проект, не би можел цел код да го прекопирам. Ако е доволно ова за некоја помош што би можело да биде, ако не, кажете, би додал уште нешто...
Во C е.
 
Може некој да ми каже што би можела да биде грешката? Барав нешто на google, ама ништо конкретно не ми помогна ...

subscripted value is neither array nor pointer nor vector

во овој ред ми дава:
Код:
registers[reg][i]=value[reg][i];
Се работи за проект, не би можел цел код да го прекопирам. Ако е доволно ова за некоја помош што би можело да биде, ако не, кажете, би додал уште нешто...
Во C е.
Како ти се дефинирани registers и value?
 
Грешката се појавува кога се обидуваш да пристапиш некој елемент како низа, а не е..
Пример:
Код:
 char *value = "dickbutt";
  value[0][0] = 's'; // ista greska

Така да кај тебе сигурно value е како низа од знаци (char *) и паѓа затоа што со value[reg] веќе добиваш еден карактер и ти на тој карактер повикуваш пак[ i ] ...а карактер (char) не е низа и то.
 
Грешката се појавува кога се обидуваш да пристапиш некој елемент како низа, а не е..
Пример:
Код:
 char *value = "dickbutt";
  value[0][0] = 's'; // ista greska

Така да кај тебе сигурно value е како низа од знаци (char *) и паѓа затоа што со value[reg] веќе добиваш еден карактер и ти на тој карактер повикуваш пак[ i ] ...а карактер (char) не е низа и то.

Како да го корегирам тоа?
 
Па не користи value[index][index] или value дефинирај како type ** value или type [][] value итн..
 

Kajgana Shop

Back
На врв Bottom