• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pętle C++ tabliczka mnożenia i zliczanie maksymalnej cyfry

Object Storage Arubacloud
0 głosów
3,600 wizyt
pytanie zadane 4 stycznia 2018 w C i C++ przez TenNowy Nowicjusz (210 p.)
Witam mam problem z dwoma zadaniami z C++. Dopiero zaczynam ogarniać programowanie a mam zadane dwa zadania z którymi nie mogę sobie poradzić.

1.wyświetli na ekranie tabliczkę mnożenia wymiaru n x n, n<15. Zadbaj o nagłówki(w pętli for)

2.dla dodatniej liczby całkowitej n, podanej przez użytkownika, obliczy ile razy w jej zapisie wystąpiła jej maksymalna cyfra. Przykładowo dla liczby 318338 funkcja powinna zwrócić wartość 2(w pętli while)

Nie proszę o gotowe rozwiązania lecz o naprowadzenie mnie jak to zrobić. Z góry dziękuję.

4 odpowiedzi

+1 głos
odpowiedź 4 stycznia 2018 przez Mirosław Zelent Nałogowiec (34,750 p.)
1. Będzie pętla w pętli - polecam obejrzeć / przeczytać cokolwiek tłumaczącego dobrze pętlę for.

2. Różnie można do tego podejść - można na przykład przekonwertować liczbę int na łańcuch string (napis), ustalić która cyfra jest największa (sprawdzając czy jest wystąpienie '9', potem '8' i tak do skutku), a na koniec pętlą while zliczyć ilość wystąpień "największego" znaku
+1 głos
odpowiedź 4 stycznia 2018 przez TenGumis Gaduła (3,440 p.)

1.

-wypisanie tabelki w 2 wymiarach sugeruje że będze trzeba użyć zagnieżdzonych forów. Powinno to wyglądać mniej więcej tak:

for(int i=1;i<=n;i++)
{
    for(int j=1;j<=n;j++)
    {
        cout <<" "<<liczba<<" ";
    }
    cout <<"\n";
}

To spowoduje wypisanie n liniii po n liczb. To co należy wstawić w miejsce liczby jest dość oczywiste patrząc na to jak działa tabliczka mnożenia. Jest to iloczyn numeru kolumny i numeru wiersza czyli i*j.

 

2. Po 1 musisz jakoś przedstawić jako liczbę jako ciąg znaków. Następnie musisz pętlą znaleźć cyfrę o największej wartości(jednocześnie będzie to najpóźniejszy znak w alfabecie więc możemy pracować na char'ach). Następnie musimy jeszcze raz za pomocą pętli przeiterować się po ciągu i znaleźć w ilu miejscach występuje liczba(znak) znaleziony w pierwszym kroku.

+1 głos
odpowiedź 4 stycznia 2018 przez niezalogowany
1. Dwie zagnieżdżone pętle z warunkami  i < n, j < n. Zależy też jak chcesz zrobić czy mnożenie liczb od 0 - 14 czy 1 -15 dla n = 15. Wtedy i,j zamiast wartości startowej 0 powinno mieć 1, a warunki powinny być takie: i<=n, j<=n. Jedna z pętli ma wypisywać wiersze, a druga ich zawartość. Dla każdej komórki wykonanej tablicy wynik otrzymasz przez proste mnożenie i * j. Gdy to zrobisz możesz zastanowić się nad użyciem funkcji std::setw, aby wyrównać komórki tablicy.

2. Za pomocą pętli while, modulo i dzielenia przez 10 możesz otrzymywać kolejne cyfry i wyliczyć największą. W tej samej pętli możesz też liczyć wystąpienia. Jednak jeżeli znajdziesz większą wystąpienia należy zerować (jedynkować :D).
0 głosów
odpowiedź 4 stycznia 2018 przez TenNowy Nowicjusz (210 p.)

Bardzo wam wszystkim dziękuję.heart

Podobne pytania

0 głosów
2 odpowiedzi 958 wizyt
0 głosów
2 odpowiedzi 626 wizyt
0 głosów
1 odpowiedź 250 wizyt
pytanie zadane 16 grudnia 2015 w C i C++ przez dzidziamocarz Początkujący (370 p.)

92,536 zapytań

141,377 odpowiedzi

319,452 komentarzy

61,922 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...