Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

tablica

Ostatnio zmodyfikowano 2012-11-26 08:42
Autor Wiadomość
ciemajek
Temat założony przez niniejszego użytkownika
tablica
» 2012-11-25 11:50:41
Witam wszystkich!
Mam tablice int X[10^6] i tablice int Y też [10^6] oraz zwykłe int Z. Jak zrobić, żeby po wpisaniu w programie wartości każdej z tablic program sprawdzał, jeżeli pierwsza cyfra tablicy jest większa od pierwszej cyfry drugiej tablicy, druga cyfra pierwszej tablicy jest większa od drugiej cyfry drugiej tablicy itd. to zwiększa wartość int Z o 1, a jeżeli pierwsza cyfra pierwszej tablicy jest mniejsza od pierwszej cyfry drugiej tablicy itd. to Z pozostaje bez zmian. Chodzi mi o to, że program ma sprawdzić poszczególnie miejsca w dwóch tablicach i je porównać tak jak wyżej. Proszę o pomoc.
P-69838
wojownik266
» 2012-11-25 11:57:01
Do rozwiązania tego zadania znakomicie naddają się instrukcje warunkowe if else oraz operatory takie jak && ||. Powodzenia.
P-69839
ciemajek
Temat założony przez niniejszego użytkownika
» 2012-11-25 12:12:14
Dziękuję. A czy może ktoś przybliżyć jak to by około wyglądało?
P-69840
crash
» 2012-11-25 13:35:40
Co to znaczy pierwsza cyfra: cyfra jedności czy cyfra mnożąca dziesięć do najwyższej potęgi w danej liczbie? W zależności od tego trzeba napisać algorytm wyciągający takową cyfrę. Jeśli masz na myśli cyfrę jedności, wykorzystaj dzielenie modulo przez dziesięć (% 10) - reszta z tego dzielenia to szukana cyfra. Jeśli chodzi o tę drugą cyfrę, to musisz tak długo dzielić daną liczbę przez 10, aż zostanie najwyższa cyfra; tutaj styka operator / oraz fakt, że dwie liczby są typu int (dzielenie całkowite bez reszty). Pozostaje tylko pętla for od zero do 10^6, instrukcja warunkowa i chyba po kłopocie ;>
P-69845
ciemajek
Temat założony przez niniejszego użytkownika
» 2012-11-25 13:43:26
Pierwsza cyfra czyli np. w tablicy X mamy zapisane: 632972419 to pierwsza cyfra to 6, druga to 3 itd.
P-69847
crash
» 2012-11-25 14:09:57
Moje propozycje nadal aktualne :) Jeśli zamotasz się z dzieleniem, to możesz użyć konwersji na string albo na char*. Wtedy skonwertowana liczba jest w postaci tablicy i wystarczy porównać odpowiednie elementy, te o najwyższych indeksach. Mankament taki, że konwersja na string jest czasochłonna, lepsiejsza już na char*, ale nadal czasochłonna, tu chodzi o porównanie łącznie dwóch milionów elementów, już lepiej pierwsza metoda z dzieleniem (chyba). 
P-69850
ciemajek
Temat założony przez niniejszego użytkownika
» 2012-11-25 20:31:12
Trochę dziwnie mi to pytać ale czy jest ktoś tak miły by podsunąć gotowca?
P-69883
Mrovqa
» 2012-11-25 21:16:40
Coś ten temat dziwnie mi śmierdzi zadaniem Tort z aktualnie trwającego I etapu OIG. Jeżeli to prawda - łamiesz regulamin.
P-69889
« 1 » 2
  Strona 1 z 2 Następna strona