Mirki #programowanie od jakiegoś miesiąca uczę się od zera, traktuję to jako łamigłówki, jak gry logiczne.
Zrobiłem program który oblicza jaką max liczbę może przechować podana przez nas objętość w bitach.
Pytanie, czy użyte pętle da się zapisać jako funkcje?
Chodzi mi o to, żeby funkcja zawierała tylko warunek for(...) a wnętrze pętli było wpisywane jako parametr.
Chciałbym skrócić kod.
#include
#include
using namespace std;
long long potega( int y)
{
return pow(2,y);
}
int main()
{
int x;
long long suma;
cout << "Podaj liczbe bitow: " << endl;
cin>>x;
cout << endl;
long long tab[x];
for (int i=0;i<=x;i++)
{
tab[i]=potega(i);
}
cout << endl;
for (int i=0;i
Zrobiłem program który oblicza jaką max liczbę może przechować podana przez nas objętość w bitach.
Pytanie, czy użyte pętle da się zapisać jako funkcje?
Chodzi mi o to, żeby funkcja zawierała tylko warunek for(...) a wnętrze pętli było wpisywane jako parametr.
Chciałbym skrócić kod.
#include
#include
using namespace std;
long long potega( int y)
{
return pow(2,y);
}
int main()
{
int x;
long long suma;
cout << "Podaj liczbe bitow: " << endl;
cin>>x;
cout << endl;
long long tab[x];
for (int i=0;i<=x;i++)
{
tab[i]=potega(i);
}
cout << endl;
for (int i=0;i
h.....s
2022-11-24 20:36:29
+3
long long tab[x];
@kanarex: w C++ deklarowanie tablic ze zmiennej to błąd, dodaj do kompilatora flagę "-pedantic" szczególnie jak zaczynasz z C++, powinno wypluć coś takiego
warning: ISO C++ forbids variable length array ‘arr’ [-Wvla]
DanteMorius
2022-11-24 20:31:10
+2
@kanarex: taka maluteńka porada - nie używaj polskiego w kodzie - ja wiem, że to ćwiczenie, do szuflady itp. Ale im wcześniej zaczniesz wyrabiać sobie dobre nawyki tym lepiej ( ͡º ͜ʖ͡º)
Wyrewolwerowanyrewolwer
2022-11-24 20:28:50
+1
Pytanie, czy użyte pętle da się zapisać jako funkcje?
@kanarex: Jasne, że się da, ale nie idź w tę stronę jeszcze bo się mocno zagrzebiesz. Ogólnie to czego szukasz to
1. generyki
2. wskaźniki (wskaźniki funkcyjne zdaje się to w C++ nazywa, dawno nie używałem).
Wyrewolwerowanyrewolwer
2022-11-24 20:32:32
+1
@kanarex: Zamiast tego możesz pomyśleć o innym podejściu do problemu, na przykład tutaj podpowiem że możesz spróbować użyć przesunięcia bitowego.
W spoilerze masz odpowiedź, ale spróbuj sam do tego dojść:
W spoilerze masz odpowiedź, ale spróbuj sam do tego dojść:
kanarex
[OP]
2022-11-24 20:33:09
+1
@Wyrewolwerowanyrewolwer: @DanteMorius: dziękować za rady :)
kanarex
[OP]
2022-11-24 20:33:39
+0
@Wyrewolwerowanyrewolwer: dzięki