Reklama
Pokazuje wyniki od 1 do 4 z 4

Temat: Zadanie Hamming 2

  1. #1
    Avatar Criss26
    Data rejestracji
    2012
    Położenie
    Płock
    Wiek
    32
    Posty
    3,076
    Siła reputacji
    14

    Domyślny Zadanie Hamming 2

    Kod:
    Zadanie Hamming 2
    
    Odległość Hamminga dwóch słów jest to liczba znaków na których te słowa się róznią. Np, odległość słów Hamming ihamiing jest równa 2, poniewą słowa różnią się pierwszym i czwartm znakiem. Jezeli słowa są różnej długości to odległość Hamminga nie jest określona. Napisz funkcję odbliczającą odległość Hamminga dwóch łańcuchów.
    
    Zadaniem głównym jest napianie programu podpowiadającego poprawne słowa, tj. słowa (słów) z zadanego słownika najbliższego wpisanemu słowu. W programie niezbędne jest wykorzystane zdefiniowanej wyżej funkcji.
    
    Wejście
    
    Piersza linia zawiera wpisane słowo.
    Druga linia zawiera liczbę n słów w słowniku.
    Kolejne n linii zawiera kolejne słowa zw słownika.
    
    Zakładamy, że słowa nie są dłuższe niż 30 znaków oraz 0<=n<=1000.
    
    Wyjście
    
    Jeżeli nie znaleziono podpowiedz pojawia się napis BRAK PODPOWIEDZI.
    W przeciwnym wypadku kolejne linie zawierają kolejne słowa o minimalenej odległości od zadanego w kolejności takiej jak znajdują się w słowniku.
    
    Przykład 1
    Wejście:
    programoanie
    3
    programming
    programowanie
    debagowanie
    
    Wyjście:
    BRAK PODPOWIEDZI
    
    Przykład 2:
    Wejście:
    programowanie
    0
    
    Wyjście:
    BRAK PODPOWIEDZI
    
     
    
    Przykład 3:
    Wejście:
    programowanie
    3
    Programowanie
    PROGRAMOWANIE
    programowanie
    
    Wyjście:
    programowanie
    Jest ktos w stanie zrobic taki program?

  2. #2
    Avatar dadag90
    Data rejestracji
    2009
    Wiek
    33
    Posty
    108
    Siła reputacji
    15

    Domyślny

    tak, za papierki kolorowe z portrecikami Kazimierza Wielkiego, Bolesława Chrobrego i Mieszka I. Jeśli chcesz z wyjaśnieniem to papierek z portretem Zygmunta II Augusta.
    Ostatnio zmieniony przez dadag90 : 16-01-2013, 12:02
    Format to ostateczność - walka do końca ...

  3. Reklama
  4. #3
    Avatar bercik
    Data rejestracji
    2005
    Położenie
    Rojca
    Wiek
    35
    Posty
    406
    Siła reputacji
    20

    Domyślny

    napisalem sobie to na szybko w ramach cwiczenia, z gory sorki za kod ale jestem za leniwy i nie chce mi sie go poprawiac zeby byl ladny ;d

    C++
    Kod:
    #include <iostream>
    #include <string>
    #include <conio.h>
    
    using namespace std;
    
    
    string Hamming(string* slowa, string slowo, int ilosc)
    {
        int *bledy = new int[ilosc];
        for(int i = 0; i < ilosc; i++)
            bledy[i] = 0;
        for(int i = 0; i < ilosc; i++)
        {
            for(int j = 0; j < slowo.length(); j++)
            {
                if(slowa[i][j] != slowo[j])
                {
                    bledy[i]++;
                }
            }
        }
        int min = 9999;
        for(int i = 0; i < ilosc; i++)
        {
            if(bledy[i] < min)
                min = bledy[i];
        }
        int podobne = 0;
        for(int i = 0; i < ilosc; i++)
        {
            if(bledy[i] == min)
                podobne = i;
        }
        return slowa[podobne];
    }
    
    int main()
    {
        string slowo;
        int ilosc;
        string *slowa;
        cout << "Wejscie:" << endl;
        cin >> slowo;
        if(slowo.length() > 30)
        {
            cout << "Slowo za dlugie!" << endl;
            getch();
            return 0;
        }
        cout << "Ilosc slow w slowniku:" << endl;
        cin >> ilosc;
        if(ilosc <= 0)
        {
            cout << "Wyjscie:" << endl << "BRAK PODPOWIEDZI" << endl;
            getch();
            return 0;
        }
        slowa = new string[ilosc];
        for(int i = 0; i < ilosc; i++)
        {
            cin >> slowa[i];
    
        }
        for(int i = 0; i < ilosc; i++)
        {
            if(slowa[i].length() != slowo.length())
            {
                cout << "Wyjscie:" << endl << "BRAK PODPOWIEDZI" << endl;
                getch();
                return 0;
            }
        }
        cout << "Wyjscie:" << endl << Hamming(slowa, slowo, ilosc);
        getch();
        return 0;
    }
    Ostatnio zmieniony przez bercik : 16-01-2013, 13:03

  5. #4
    Avatar dadag90
    Data rejestracji
    2009
    Wiek
    33
    Posty
    108
    Siła reputacji
    15

    Domyślny

    eh...
    Format to ostateczność - walka do końca ...

Reklama

Informacje o temacie

Użytkownicy przeglądający temat

Aktualnie 1 użytkowników przegląda ten temat. (0 użytkowników i 1 gości)

Podobne tematy

  1. Fizyka - zadanie na masę Księżyca.
    Przez Keyer w dziale Szkoła i nauka
    Odpowiedzi: 3
    Ostatni post: 13-09-2012, 20:01
  2. Zadanie o organizacji terrorystycznej
    Przez Urlak w dziale Szkoła i nauka
    Odpowiedzi: 2
    Ostatni post: 27-05-2012, 19:31
  3. Zadanie z polskiego.
    Przez Maques w dziale Szkoła i nauka
    Odpowiedzi: 1
    Ostatni post: 12-05-2012, 14:46
  4. [MAPPING]Zadanie dla mapperow - Konwertowanie mapy z 8.54 na 7.6?
    Przez mejo33 w dziale Strefa developerska
    Odpowiedzi: 14
    Ostatni post: 21-10-2011, 13:07
  5. Odpowiedzi: 9
    Ostatni post: 22-08-2009, 22:44

Zakładki

Zakładki

Zasady postowania

  • Nie możesz pisać nowych tematów
  • Nie możesz pisać postów
  • Nie możesz używać załączników
  • Nie możesz edytować swoich postów
  •