1. Napisac funkcje typu całkowitego i przyjmujaca pojedynczy argument całkowity, która w
wyniku zwraca liczbe powstała z argumentu poprzez bitowe przesuniecie w prawo, az do
napotkania pierwszego bitu ustawionego lub zero dla argumentu zerowego. Przykład: jesli
argument bedzie równy \(\displaystyle{ 8(= 01000_2)}\), to w wyniku powinnismy dostac \(\displaystyle{ 1(= 0001_2)}\), zas jesli
argument bedzie równy \(\displaystyle{ 26(= 11010_2)}\), to w wyniku powinnismy otrzymac \(\displaystyle{ 13(= 11012_2)}\).
2. Napisac funckje odwracajaca zawartosc tablicy bez pomocy tablicy pomocniczej.
3. Napisac funkcje o nazwie max diff, która dla niepustej listy \(\displaystyle{ [x_1, . . . , x_n]}\) znajdzie maksymalna
wartosc \(\displaystyle{ |x_i-x_j|}\) dla \(\displaystyle{ 1\leq i\leq j\leq n}\)
4. Napisac program sprawdzajacy czy dwa podane słowa sa anagramami. (Słowa sa anagramami
jesli jedno z nich powstaje z drugiego przez pewna permutacje liter).
5. Napisac funkcję
* transponująca podaną macierz kwadratową
* dodającą dwie podane macierze
* mnożącą dwie macierze.
6. Napisać funkcje wyszukujące element najmniejszy i największy w podanej tablicy.
7. Napisać program do równoczesnego wyszukiwania elementu najmniejszego i największego
w tablicy.
8. Napisać program obliczający procentowa częstotliwość występowania zadanego przez użytkownika znaku w linii tekstu.
9. Zamiana z systemu dziesiętnego na system o innej podstawie
Z góry dziękuje za pomoc, bo nie wiem zupełnie jak się do tego zabrać
[c++] kilka progamów...funkcje i nie tylko
- Szemek
- Użytkownik
- Posty: 4819
- Rejestracja: 10 paź 2006, o 23:03
- Płeć: Mężczyzna
- Lokalizacja: Gdańsk
- Podziękował: 43 razy
- Pomógł: 1407 razy
[c++] kilka progamów...funkcje i nie tylko
Pomysły do zadań:
1.
" >> " - przesunięcie bitowe w prawo
Osobiście bawiłbym się z jakąś pętlą i dzieleniem modulo.
2.
Na pętli for zamienić elementy: pierwszy z ostatnim, drugi z przedostatnim i tak dojechać do połowy tabeli. Tabele przekazujemy do funkcji przez referencję.
Widziałem gdzieś jeszcze sposób na wskaźnikach.
1.
" >> " - przesunięcie bitowe w prawo
Osobiście bawiłbym się z jakąś pętlą i dzieleniem modulo.
2.
Na pętli for zamienić elementy: pierwszy z ostatnim, drugi z przedostatnim i tak dojechać do połowy tabeli. Tabele przekazujemy do funkcji przez referencję.
Widziałem gdzieś jeszcze sposób na wskaźnikach.
- kadiii
- Użytkownik
- Posty: 642
- Rejestracja: 20 gru 2005, o 21:04
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Pomógł: 130 razy
[c++] kilka progamów...funkcje i nie tylko
3. Wyznaczyć min i max.
4. tu nie mam pomysłu narazie, można po kolei sprawdzać literki czy istnieją odpowiadające
5. Tu to tylko trzeba wiedziec jak to robić, a to chyba łatwo znaleźć.
6.
7. Jak powyżej lub bardziej rozbudowanie używając rekurencji i zasady dziel i zwyciężaj(podział zbioru poszukiwań i korzystanie z wyniku porównań poszczególnych par)
8.
9. dziel liczbę przez podstawę nowego systemu i spisuj resztę z dzielenia aż do 0, czytana od tyłu będzie liczbą w danym systemie.
4. tu nie mam pomysłu narazie, można po kolei sprawdzać literki czy istnieją odpowiadające
5. Tu to tylko trzeba wiedziec jak to robić, a to chyba łatwo znaleźć.
6.
Kod: Zaznacz cały
min=t[0];
id=0;
for(i=1;i<n;i++) if(min>t[i])
{
min=t[i]
id=i;
}
8.
Kod: Zaznacz cały
ile=0;
for(i=0;i<strlen(slowo);i++) if(slowo[i]==szukany_znak) ile++;
cout<<ile/strlen(slowo)*100<<"%";
- kadiii
- Użytkownik
- Posty: 642
- Rejestracja: 20 gru 2005, o 21:04
- Płeć: Mężczyzna
- Lokalizacja: Wrocław
- Pomógł: 130 razy
[c++] kilka progamów...funkcje i nie tylko
Można też posortować najpierw oba słowa i potem sprawdzić czy suma modułów różnic kodów odpowiadających liter jest równa zero.
- Undre
- Użytkownik
- Posty: 1430
- Rejestracja: 15 lis 2004, o 02:05
- Płeć: Mężczyzna
- Lokalizacja: UĆ
- Podziękował: 3 razy
- Pomógł: 92 razy
[c++] kilka progamów...funkcje i nie tylko
Tylko po co tak kombinowac ? Nie mozna juz po prostu dwoch tablic statycznych odpowiadacych mozliwym symbolom terminalnym sieknac i po prostu tam zliczac ilosc wystapien kazdego symbolu, po czym pod koniec w petli sprawdzic wystapienia w obu tabelach ? Moze brzmi zmudnie, ale przynajmniej wiadomo jak to machnac, jak kto wprawny to i szybko nawet pojdzie ;P
Zreszta potem mozna to przerobic to od razu 8 bedzie.
Zreszta potem mozna to przerobic to od razu 8 bedzie.
-
- Użytkownik
- Posty: 93
- Rejestracja: 31 maja 2007, o 17:53
- Płeć: Mężczyzna
- Lokalizacja: Chojnice
- Podziękował: 1 raz
- Pomógł: 3 razy
[c++] kilka progamów...funkcje i nie tylko
1. Jeżeli chodzi o pierwszą to dla argumentu a wywołujemy rekurencyjnie funkcje na a>>1, do momentu aż a==0, lub (a%2==1)