-
Notifications
You must be signed in to change notification settings - Fork 0
/
hledani_cisla_v_soustave.c
49 lines (34 loc) · 1.62 KB
/
hledani_cisla_v_soustave.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <stdio.h>
int main()
{
int hodnota;
int temp_hodnota;//prechodna hodnota, kteroa se bude pouzivat na vypocty
int zaklad;
int cislice;
printf("zadejte hodnotu: ");
fscanf(stdin, "%d", &hodnota);
printf("zadejte zaklad: ");
fscanf(stdin, "%d", &zaklad);
printf("zadejte cislici: ");
fscanf(stdin, "%d", &cislice);
temp_hodnota = hodnota; //s temp_hodnotou budeme dale pocitat
int zbytek = 0;
int pocitadlo = 1;
int muj_vysledek = 0;
int found = 0; //promena pro hledani cislice
for(;temp_hodnota != 0;pocitadlo++)//dokud nedojdu na konec deleni, tj. temp_hodnota == 0
{
zbytek = temp_hodnota % zaklad; //ulozim si zbytek po deleni
temp_hodnota = temp_hodnota / zaklad;//vydelim
if(zbytek == cislice)//jestli behem deleni najdu cislo co hledam tak si ulozim jeho pocizi
{
pocitadlo = muj_vysledek;//pocitadlo = kolikrat sem hodnotu delil zakladem, muj_vysledek = zaznamenam si pozici na ktere sem nasel vysledek
found = 1;//cislo sem nasel a tedy ho pak muzu vypsat
}
}
if(found == 1)//od zelkoveho poctu deleni (pocitadlo) odectu muj_vysledek a dostanu tedy pozici na ktere se nachazi hledane cislo
printf("V zapisu v pravidelnem posicni soustave o zakladu %d cisla %d je cislice %d na %d. pozici.\n", zaklad, hodnota, cislice, (pocitadlo - muj_vysledek));
if(found == 0)//nebylo nalezeno ani jedno hledane cislo
printf("V zapisu v pravidelnem posicni soustave o zakladu %d cisla %d nebyla cislice %d nalezena\n", zaklad, hodnota, cislice);
return 0;
}