Cawko neviete mi niekto pomoct ako vytvorit program v C++ ktory najde vsetky 5ciferne cisla, v kt sa cisla 2,3,4,5,6, budu vyskytovat prave raz napr. (23456,23465,23645....) ???? za odpovede Dakujem
Fórum › C / C++
C++ vypis vsetkych 5cifernych cisiel
možností máš plno... teď mě jen rychle napadá, že v prvním kroku to můžes vyfiltrovat, že to musí být v rozmezí 10000 a 99999.. v druhým kroku každé číslo převedeš na znaky a kontrolovat výskyt zmíněných čísel (resp. porovnávat znaky místo čísel)
nebo teď mě ještě napadlo, že dalsí filtr můžes nastavit, že číslo potom musí být dělitelné 5 nebo být sudé
opravdu na tohle je plno způsobů, stačí se trochu zamyslet a zkusit najít některý, který bude rychlý a efektivní.. to s tim porovnaní znaků je celkem brutální cesta, takže předtim je dobrý to co nejvíc vyfiltrovat a až nebude jak, tak zvolit porovnání znaků
#include <string> #include <algorithm> #include <iostream>
int main() { std::string s = "23456"; while (std::next_permutation(s.begin(), s.end())) std::cout << s << '\n'; }
google: hledám permutation algorithm
2. odkaz http://www.google.com/url?… obsahuje tento zdroják:
#include <stdio.h>
void print(const int *v, const int size)
{
if (v != 0) {
for (int i = 0; i < size; i++) {
printf("%4d", v[i] );
}
printf("\n");
}
} // print
void visit(int *Value, int N, int k)
{
static level = -1;
level = level+1; Value[k] = level;
if (level == N)
print(Value, N);
else
for (int i = 0; i < N; i++)
if (Value[i] == 0)
visit(Value, N, i);
level = level-1; Value[k] = 0;
}
main()
{
const int N = 4;
int Value[N];
for (int i = 0; i < N; i++) {
Value[i] = 0;
}
visit(Value, N, 0);
}
Přeložím gcc -std=c99 x.c
Spustím.
Zobrazuje všechna 4-místná čísla z číslic 1, 2, 3, 4. Protože chci pětimístná, prodloužím pole ve funkci main na 5 prvků (řádek cca 33 změním na const int N = 5;) Teď to generuje 5-místná čísla z číslic 1-5. Protože to chci z číslic 2-6, tak upravím funkci print tak, aby tiskla vždy o 1 větší číslo (řádek 8, před pravou závorku přidej +1).
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Výpis všetkých (8) miestnych čísiel — založil Priwi
Nacitanie vsetkych suborov v adresary — založil myky
Spravne zobrazovanie u vsetkych prehliadacov ? — založil greppi
Zafixovanie všetkých vecí na stránke. — založil alex_laco
Súčet všetkých podreťazcov reprezentujúcich čísla — založil Jozef01
Moderátoři diskuze