Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Pascal

a :=b;b := a

Pascal

  • Zamknięty Temat jest zamknięty
20 odpowiedzi w tym temacie

#1 QTM. Peyote

    Wszechpomocny

  • Użytkownik

Reputacja: 1 010
Hero

  • Postów:330
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Polska
Offline

Napisano 10.10.2011 15:22

a := b
b := a

Czy tylko ja nie zgadzam się z moją nauczycielką od programowania, która twierdzi, że tak zamienia się wartości zmiennych?
  • +
  • -
  • 1

#2 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 10.10.2011 15:28

Wartość zmiennej zmieniamy znakiem "=", "/=", "*=", "-=" i "+=" np. a = b ( chyba że ja coś źle zrozumiałem )
  • +
  • -
  • 0

marwit-0.png


#3 QTM. Peyote

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 1 010
Hero

  • Postów:330
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Polska
Offline

Napisano 10.10.2011 15:30

Źle zrozumiałeś. ":=" dlatego, że to pascal. Chodzi o to, że jeżeli a := b; b := a, to wszystko będzie miało wartość początkowego b.
  • +
  • -
  • 0

#4 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 10.10.2011 15:31

Wszystko zależy o jakim języku mówisz.
Jak Pascal/Delphi to właśnie tak ":=" tam podstawia się zmienne.
Większość języków ma tak jak Marwit mówi "=".


Edit:

jeżeli a := b; b := a, to wszystko będzie miało wartość początkowego b.

No to wiadome.
a := 1;
b := 2;
a := b; //a = 2;
b := a; //b = 2;
Dlaczego miało by być inaczej?

Użytkownik mgr inż. Pavulon edytował ten post 10.10.2011 15:33

  • +
  • -
  • 0

#5 QTM. Peyote

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 1 010
Hero

  • Postów:330
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Polska
Offline

Napisano 10.10.2011 15:34

Moja nauczycielka twierdzi tak:


a := 1;
b := 2;
a := b; //a = 2;
b := a; //b = 1;

Nie pytaj mnie dlaczego ;d

15 minut się kłóciłem i nie przyznała mi racji. W końcu dałem za wygraną i udawałem, że rozumiem, bo już nie miałem siły.

Użytkownik QTM. Peyote edytował ten post 10.10.2011 15:35

  • +
  • -
  • 1

#6 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 10.10.2011 15:37

@UP, jak chcesz udowodnić to po prostu wydrukuj wynik zmiennej b w konsoli ( opad szczeny nauczycielki, bezcenne xD ) :) To co powiedział Pav jest w 100% prawdziwe.

Użytkownik MarWit edytował ten post 10.10.2011 15:38

  • +
  • -
  • 0

marwit-0.png


#7 Hiroshima

    Godlike

  • Przyjaciel

Reputacja: 1 327
Godlike

  • Postów:4 984
  • Steam:steam
  • Imię:Michał
  • Lokalizacja:Málaga
Offline

Napisano 10.10.2011 15:38

to daj jej linka do tego tematu na następnej lekcji :)
Oczywiście pozdrawiamy cały zespół pedagogiczny ^^
  • +
  • -
  • 0

#8 QTM. Peyote

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 1 010
Hero

  • Postów:330
  • GG:
  • Steam:steam
  • Imię:Mateusz
  • Lokalizacja:Polska
Offline

Napisano 10.10.2011 15:41

To jest jakaś tragedia.. Poszedłem tam żeby się czegoś nauczyć, a tu na dzień dobry takie coś -.-. Straciłem wiarę po prostu..

Edit:

Słyszałem, że nauczanie programowania w szkole jest mocno ograniczone, ale takiego czegoś się nie spodziewałem ;d

Użytkownik QTM. Peyote edytował ten post 10.10.2011 15:42

  • +
  • -
  • 0

#9 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 10.10.2011 17:19

Nie da się nigdzie zamienić zmiennych wartościami ( a => b, b => a ) bez zmiennej pomocniczej.

I przyzwyczajaj się, nauczyciele informatyki itp. w polskich szkołach w większości nie nadają się do niczego.
  • +
  • -
  • 0

#10 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 10.10.2011 17:25

da się bez zmiennej :P

int a = 1;
int b = 2;
    
a = a ^ b;
b = a ^ b;
a = b ^ a;
 
//a = 2, b = 1

ale prawda, że w szkole programować Cię nie nauczą zbyt dobrze
  • +
  • -
  • 0

#11 Hajmus

    Wszechwidzący

  • Użytkownik

Reputacja: 60
Pomocny

  • Postów:260
  • Imię:Wojtek
  • Lokalizacja:Kraków
Offline

Napisano 10.10.2011 17:28

Miałem podobną sytuację w technikum ^^ czasem trzeba przemilczeć :D
  • +
  • -
  • 0

#12 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 553
Godlike

  • Postów:11 976
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 10.10.2011 17:29

w python można to robić tak
a = 1
b = 2
a , b = b , a
;) jednak to też korzysta ze zmiennej pomocniczej (nie do końca zmiennej tylko kroki )
daj nauczycielce link do tego tematu :D
Hiroshima (10.10.2011 17:31):
fakultet u nas zrobi ^D^

  • +
  • -
  • 0

#13 KoZaK_Pl

    Pomocny

  • Użytkownik

Reputacja: 7
Nowy

  • Postów:42
  • Imię:Damian
  • Lokalizacja:Warszawa
Offline

Napisano 10.10.2011 17:34

Omg.. Spór o nic. Polecam przejżeć podstawową algorytmikę, bo algorytm swapowania się kłania. Odsyłam do wikpedi: http://pl.wikipedia....%9Bci_zmiennych

funkcja swap(integer a, integer <img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' />
{
	    a:=a+b;
	    b:=a-b;
	    a:=a-b;
}

Użytkownik KoZaK_Pl edytował ten post 10.10.2011 17:34

  • +
  • -
  • 0

#14 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 10.10.2011 17:34

da się bez zmiennej :P

int a = 1;
int b = 2;
	
a = a ^ b;
b = a ^ b;
a = b ^ a;
 
//a = 2, b = 1

ale prawda, że w szkole programować Cię nie nauczą zbyt dobrze

No niech będzie, pośrednio da się na setki sposobów, tylko powiedz mi kto tego użyje w praktyce :P
Kto w ogóle używa jakiejkolwiek zamiany dwóch zmiennych w praktyce? Wyjątki :D

p.s.
w liceum miałem gościa którego cała wiedza była w zeszyciku z którego przepisywał/kazał przepisywać przykłady ;)
  • +
  • -
  • 0

#15 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 553
Godlike

  • Postów:11 976
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 10.10.2011 17:35

btw. w c++ jest funkcja swap od tego
kozak jaki spór ?
  • +
  • -
  • 0

#16 KoZaK_Pl

    Pomocny

  • Użytkownik

Reputacja: 7
Nowy

  • Postów:42
  • Imię:Damian
  • Lokalizacja:Warszawa
Offline

Napisano 10.10.2011 17:37

Spór w sensie dość długi wątek jak na dział programowanie ^^ Co do funkcji swap w c++ to działa ona na stringach -.-

Użytkownik KoZaK_Pl edytował ten post 16.10.2011 20:24

  • +
  • -
  • 0

#17 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 553
Godlike

  • Postów:11 976
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 10.10.2011 17:39

no nie do końca
http://www.cplusplus...algorithm/swap/


Two objects, whose contents are swapped.
The type must be copy constructible and support assignment operations.


  • +
  • -
  • 0

#18 KoZaK_Pl

    Pomocny

  • Użytkownik

Reputacja: 7
Nowy

  • Postów:42
  • Imię:Damian
  • Lokalizacja:Warszawa
Offline

Napisano 10.10.2011 17:41

Myślałem, że mowa jest o swapie z biblioteki string.http://www.cplusplus...ce/string/swap/ Alghoritma od dawna nie używam, bo wiele sprawdzarek go nie akceptuje.
  • +
  • -
  • 0

#19 fdszpl0

    Pomocny

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:69
  • Lokalizacja:Kraków
Offline

Napisano 10.10.2011 21:33

no cóż nauczycielka od programowania to już brzmi dziwinie i po pierwszym poście było widać że coś jest nie tak
  • +
  • -
  • 0

#20 Ogen Dogen

    Czempion

  • Power User

Reputacja: 261
Wszechwidzący

  • Postów:837
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Dąbrowa Górnicza
Offline

Napisano 08.01.2012 14:10

a := 1;
b := 2;
a := b; //a = 2;
b := a; //b = 1;


A ja się nie zgodzę ;)
Jak przypiszesz do a wartość b to wtedy a = 2 , ale później przypisujesz do b nową wartość a , czyli w efekcie
a = 2 i b = 2;

Jak chcesz zamienić te wartości to możesz spróbować pomóc sobie 3 zmienną np.
(zamiana a na b i b na a)
a:= 1 ;
b:= 2 ;
c:= a ;
a:= b ;
b:=c;

Powinno tak działać :P
sebul (08.01.2012 14:16):
Odkryłeś Amerykę odkopując ten temat :facepalm:
MarWit (08.01.2012 14:46):
:facepalm:
1. Odkop
2. Przyznaj się, nie czytałeś reszty tematu..?

  • +
  • -
  • -8

b_350_20_360204_C20008_FFFFFF_000000.png 193.33.176.115:27015

 

94e23d811c.png

 






Również z jednym lub większą ilością słów kluczowych: Pascal

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych