Funkcja warunkowa

Funkcja warunkowa
DS
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 12 lat
  • Postów:32
0

if (skok=1) (if (skok1>50) (ludek_y=ludek_y-2) else (ludek_y=ludek_y+2),if skok1=0 skok=0);
Witam. Napisałem takie coś i mam problem.


Mam dysortografię i dysgrafię więc może się zdarzyć że coś źle napiszę lub się nie rozczytacie.
rincewind
Jak dla mnie perełka, szczególnie z komentarzem objaśniającym i stopką postu. :D
fasadin
  • Rejestracja:prawie 14 lat
  • Ostatnio:prawie 3 lata
  • Postów:4882
5

user image

weź przeczytaj sam siebie dopóki nie zrozumiesz dlaczego Twój post jest bezsensu i go popraw. Wtedy wstawię edit jak będę potrafił pomóc

MarekR22
Moderator C/C++
  • Rejestracja:około 17 lat
  • Ostatnio:8 minut
0

Zgadzam się z tobą masz problem ... z głową!
Próbujesz być oryginalny i zamiast pisać normalnie to kombinujesz z nawiasami przecinkami i na dodatek piszesz wszystko w jednej linijce.


Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.
gswidwa
Aleś ty niekulturalny, nie interesuje Cię ten temat to stul się i nie pisz bezwartościowych komentarzy o głowach. Tyle ode Mnie.
DS
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 12 lat
  • Postów:32
0

Dobra, nie wiem jak to wytłumaczyć, ani jak zrobić. Nie rozumiem o co chodzi z tym pisaniem normalnie a ten przecinek... Przypadkowo (nie tu to wpisałem). Może ułatwi to jak dodam kod.

Kopiuj
#include <allegro.h>
int main() 
{	
	allegro_init();
	install_keyboard();
	set_color_depth(32);
	set_gfx_mode(GFX_AUTODETECT_WINDOWED,800,600,0,0);
	clear_to_color(screen, makecol(128,128,128));
	BITMAP * bufor = NULL;
	BITMAP * tekstury = NULL;
	bufor = create_bitmap(4000,600);
	tekstury = load_bmp("tekstury.bmp",default_palette);
	int ludek_x=0,ludek_y=0,skok,skok1;
	skok=0;
	while (!key[KEY_ESC])
	{
	if (key[KEY_LEFT] and ludek_x>0) ludek_x=ludek_x-4;
	if (key[KEY_RIGHT] and ludek_x<3950) ludek_x=ludek_x+4;
	if (key[KEY_UP] and (skok=0)) (skok=1,skok1=100);
	if (skok=1) (if (skok1>50) (ludek_y=ludek_y-2) else (ludek_y=ludek_y+2),if skok1=0 skok=0);
	if (getpixel(tekstury, ludek_x, ludek_y+50) == makecol(255,0,255) and skok=0) ludek_y=ludek_y+5;
	blit(tekstury,bufor,0,600,0,0,4000,600);	
	masked_blit(tekstury,bufor,0,0,0,0,4000,600);
	masked_blit( tekstury,bufor,0,1200,ludek_x,ludek_y,50,50 );
    blit(bufor,screen,ludek_x-400,0,0,0,800,600);
    }
	allegro_exit();
	return 0;
}
END_OF_MAIN();

Próbuję zrobić skok. Korzystam z allegro.


Mam dysortografię i dysgrafię więc może się zdarzyć że coś źle napiszę lub się nie rozczytacie.
edytowany 1x, ostatnio: DarkSlayer
_13th_Dragon
A nawiasy okrągłe zamiast klamrowych? I brak formatowania ... I przypisanie zamiast porównania ... Zacznij od jakiegoś kursu.
DS
Tak to jest jak coś się czyta pół roku temu a próbuje się do tego wrócić :/ Rzeczywiście zamiast == czasami napisałem = itp. Spróbuję coś zaradzić :D
Inquis1t0r
To przeczytaj swoje źródło wiedzy jeszcze raz, a najlepiej kilka. Ze zrozumieniem.
_13th_Dragon
Kilka razy - stanowczo odradzam, można zwariować. ;]
Inquis1t0r
Fakt, to inaczej. Raz ze zrozumieniem i miej źródło zawsze pod ręką.
DS
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 12 lat
  • Postów:32
0

No, na razie wyszło takie coś.

Kopiuj
	if (skok=1)
	{if (skok1>50)
	{ludek_y=ludek_y-2;}
	else
	{ludek_y=ludek_y+2;}
	if (skok1=0) {skok=0;}
	}

Niby wyszło wszystko dobrze, ale z tym nie działa. Postać leci cały czas w dół a powinna zatrzymywać się na ziemi.


Mam dysortografię i dysgrafię więc może się zdarzyć że coś źle napiszę lub się nie rozczytacie.
_13th_Dragon
... "Rzeczywiście zamiast == czasami napisałem = itp.", co ty nie powiesz ...
DS
Aaa, skupiłem się na nawiasach (bo zastanawiałem się o co z nimi chodzi).
MarekR22
lepiej pozbaw się tej mani pisania jednej linijce. Wyrób sobie odruchy: otwierasz klamrę: naciskasz enter, kończysz pisać warunek pętli/if-a: otwierasz klamrę lub naciskasz enter. Jak będziesz debugował kod to okaże się, że podział na kilka linii jest wygodny.
_13th_Dragon
... nie tyle wygodny ile jedyny nadający się do debugowania. ;]
HO
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 11 lat
  • Postów:283
1

Operatory mylisz.

Kopiuj
== // porównanie
= // przypisanie

Jeśli uważasz mój post za wartościowy - daj punkt.
Mój post pomógł Ci rozwiązać problem - zaznacz go. Pozdrawiam
DS
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 12 lat
  • Postów:32
0

Wątek można zamknąć, odpowiedzi podane w komentarzach.


Mam dysortografię i dysgrafię więc może się zdarzyć że coś źle napiszę lub się nie rozczytacie.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.