
C++ IF.
Dobrý den. Mám vytvořené pole pomocí příkazu new a chci označit čísla,která jsou dělitelná čísly v poli v rozmezí x,y , ale zjístil jsem ,že musím definovat if a jeho podmínky už předem, ale nějak nevím jak.
Jediné co mě napadá je udělat cyklus v němž se všechna čísla jenž jsou dělitelné číslem pole a následně je uložit do jiného pole(např cisla) a pak "posunout pole dělitelů na další číslo" a následně prověřit čísla pole cisla číslem pole dělitelů a tak pokračovat dokud nebude hodnota pole dělitelů NULL.... a pak vypsat čísla v poli cisla. .............................
Ale to je jen teorie blba co se v tom moc nevyzná. No, raději se vrátím zpět - existuje nějaký příkaz jimž bych mohl přidávat do kódu IF a jeho podmínky během chodu programu? Předem moc děkuji za odpovědi
Programy, které modifikují samy sebe sice existovat mohou a taky existují, ale rozhodně nejde o obvyklou praktiku, takže by ses tomu měl vyhnout.
Hmm
, to je škoda , chtěl jsem si vytvořit program, který je nezávislý na počet dělitelů jenž se zadávají
Však to pořád můžeš. Na to nepotřebuješ, aby ten program měnil sám sebe.
Pravda, ale ten kod bude zadrhovačka(pro mě 100%).
No nevím, jestli jsem správně pochopil zadání, ale tohle by měly zvládnou dva cykly. Takže primitivní záležitost.
Pravda, ale ja se zamotal v poli.
Hmm, asi to už mám, ale pokaždé mi to crashne, poradí mi někdo? Přiložím kod(snad jsem nic nevynechal):
ked nieco crashne tak to nieco napise alebo si to mozes v debuggeri skontrolovat ze kde a preco to crashlo.
v tych cykloch mas totalny bordel, bb je najskor furt okolo 5 takze prvy cyklus asi ani neskonci nikdy a pp sa zvysi az dokial to necrashne.
1) prepis vsetjy nazvy premennych na jasne oznacenie vyznamu. Ziadne pepe bebe pp veve ani podobne hovadiny.
2) najprv si ujasni co sa bude zvysovat od kolko po kolko a preco. Preber si ten algoritmus offline v hlave alebo v niecom inteligentnom.
3) az potom zacni pisat nejake cykly.
Díky, už mi to funguje jak má.... když jsem se na to koukl dnes tak jsem musel být asi mimo když jsem psal ten kód... těch chyb co jsem tam měl. No nic, jdu si ještě upravit výstup.
#include <iostream>
#include <windows.h>
using namespace std;
void cistka()
{
system("CLS");
}
int main()
{
int Odk,dok;
int kod;
cout <<" Od kolika: "<< ' ';
cin >> Odk;
cout <<" Do kolika: "<< ' ';
cin >> dok;
cout <<" Kolik delitelu: " <<' ';
cin >> kod;
int *delitele = new(nothrow) int[kod];
for(int tt = 0;tt < kod;++tt)
{
cout << " " << tt+1 << ". delitel:" <<' ';
cin >> delitele[tt];
}
int rozdil = dok - Odk;
int *vpole = new(nothrow) int[rozdil];
int a = 0;
for(;Odk <= dok;++Odk)
{
for(int bb = 0;bb < kod;++bb)
{
if(Odk%delitele[bb]==0)
{
vpole[a]= Odk;
}
else
{
vpole[a]= 0;
bb = kod;
}
}
a = a + 1;
}
for(int ii=0;ii < dok;++ii)
{
if(vpole[ii]!=0)
{
cout << vpole[ii] << endl;
}
}
return 0;
}