całkowity początek programowania

całkowity początek programowania

Wątek przeniesiony 2022-04-06 12:54 z C/C++ przez cerrato.

CK
  • Rejestracja:około 4 lata
  • Ostatnio:około rok
1

Moim zdaniem książka Python dla wszystkich https://py4e.pl/translations/PL/py4e-pl-print-latest.pdf nie jest odpowiednia dla pana. (Z tego pochodzą pana listingi) Nie wiem kto to tłumaczył ale takie tłumaczenie jest kompletnie nie zrozumiałe: "Często chcemy zajrzeć do ciągu znaków i znaleźć pewien podciąg" - takich kwiatków ma ten pdf dużo
Polecałem panu "Python - Instrukcje dla programisty wydanie II - Eric Matthes wydawnictwo Helion - jest napisana przystępnie i zrozumiale - ale no niestety jest płatna. Ale moim zdaniem warto wydać 64 zł za 616 stron (49zł ebook) zrozumiale napisanej książki niż męczyć się z pdf z netu

Dla mnie "Python dla wszystkich" bardzo pokrętnie tłumaczy:
"Ciąg znaków jest sekwencją znaków. Możesz uzyskać dostęp do poszczególnych
znaków za pomocą operatora w postaci nawiasów kwadratowych:

fruit = 'banan'
letter = fruit[1]

Druga instrukcja wyodrębnia ze zmiennej fruit znak z pozycji o indeksie 1 i
przypisuje go do zmiennej letter.
Wyrażenie w nawiasach kwadratowych nazywane jest indeksem. Indeks wskazuje,
który chcesz znak z zadanej sekwencji.
Ale prawdopodobnie nie otrzymasz tego, czego oczekujesz"

Ja bym nie chciał się uczyć z takiej książki kóra nie potrafi w odpowiedniej kolejności wyjaśnić czym jest indeks

edytowany 7x, ostatnio: Czysty kod
Romuald Łukomski
Poszukam tej książki, póki co wpadł mi w ręce "Python w pigułce" z Komputerswiat. No zbyt przejrzysty nie jest , ale poczytam i pokombinuje.
veneficus
  • Rejestracja:ponad 5 lat
  • Ostatnio:20 dni
  • Postów:383
3

Darmowa wersja jednej z lepszych książek, https://automatetheboringstuff.com/ jak nie umie się Angielskiego to zacząć naukę od niego lub równocześnie :)


We buy things we don't need with money we don't have to impress people we don't like.
Zobacz pozostały 1 komentarz
Romuald Łukomski
Dziękuję już mam w zakładkach, będę czytał i ćwiczył.
randomize111
@Czysty kod: true te książki dwie najlepsze na start, chociaż Python Crash Course wybrałbym jakbym chciał się uczyć programowania w Pythonie, a Automate the Boring Stuff jeśli chciałbym sobie porobić coś co mi jakieś efekty da na komputerze, niekoniecznie w drodze do przyszłej pracy programisty
CK
do weryfikacji może pan korzystać z tłumacza https://www.deepl.com/pl/translator ale najlepiej dopiero wtedy gdy pan nie rozumie - ten tłumacz nieźle czasem sobie radzi - podobno jest najlepszy na świecie
randomize111
@Czysty kod: moje doświadczenia pokazały że działa podobnie jak tłumacz google :P ogólnie to bym polecił dla autora tematu jakiś filmik gdzie by robił to co dana osoba, tylko tu też może nie być idealnie bo może się zdarzyć inny system operacyjny, ustawienia itp.
CK
Jeżeli chodzi o składnie to do tekstów literackich bardziej się nadaje niż google - google tłumaczy bardziej literalnie i nie zmienia tak bardzo szyku zdania jednak w tekstach poetyckich lepiej wypada deepl
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:minuta
  • Postów:8397
3
Czysty kod napisał(a):

Dla mnie "Python dla wszystkich" bardzo pokrętnie tłumaczy:
"Ciąg znaków jest sekwencją znaków.

Wina tłumaczenia. W oryginale jest "A string is a sequence of characters.". Jeśli string zostało przetłumaczone jak "ciąg znaków", to robi się nam masło maślane, a widocznie tłumacz uznał, że musi przetłumaczyć każde zdanie dosłownie. Ogólnie jak się poczyta oryginał, to widać, że tłumaczenie jest dość papierowe.

Gdyby nie to, że tłumacze mało zarabiają (a już szczególnie angielskiego), to sam bym został tłumaczem, bo bym to robił lepiej.


randomize111
Ogólnie tłumaczenie w większości książek technicznych słabe, a czasami to się nie da czytać. Szkoda tylko że książki po angielsku są często 2 razy droższe...
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
3

Oglądam z uwagą kursy Python 3 - . . Nie wiem już kto mi to polecił, ale bardzo dziękuję. Wiele rzeczy stają dość jasne. Na razie jestem w lekcji nr 3.Powolutku robi się coraz jaśnie, mam nadzieję, że ten trend będzie trwały 😀.

CK
  • Rejestracja:około 4 lata
  • Ostatnio:około rok
2
Romuald Łukomski napisał(a):

Oglądam z uwagą kursy Python 3 - .https://www.youtube.com/watch?v=vek4MqPGvVU . Nie wiem już kto mi to polecił, ale bardzo dziękuję. Wiele rzeczy stają dość jasne. Na razie jestem w lekcji nr 3.Powolutku robi się coraz jaśnie, mam nadzieję, że ten trend będzie trwały 😀.

Chyba o ten filmik chodziło - nie wyświetla się

Romuald Łukomski
To ten z lekcją 3:https://www.youtube.com/watch?v=uljdGLu4Uow
Romuald Łukomski
No właśnie prosto i łopatologicznie tłuczmy, może dam radę. Czytam wszystko co piszecie , zaglądam tam, gdzie wskazujecie i pojawia się światełko w tunelu. Malutkie wprawdzie , ale zawsze.
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
0

Wykonuję ćw z filmiku dot operatorów logicznych and, or, not i nie wiem dlaczego zawsze przy zmianach danych pokazuje się komunikat
"Możesz wejść"", skoro wprowadzone liczby temu zaprzeczają, co robię źle?
wiek = 19
kasa = 10

if not wiek > 12 or kasa>=30:
print("Może wejść")
else:
print("Nie może wejść")
Proszę o wyjaśnienie.

randomize111
Na pewno dokładnie tak program jest napisany? Według tych instrukcji powyżej powinno wyskoczyć "Nie może wejść"
Romuald Łukomski
Dokładnie tak, skopiowałem.
fasadin
czy plik jest zapisany? Czasami jest tak, ze robimy zmiany w pliku ale bez ich zapisania plik posiada stare zmiany. Ten program musi miec print("Nie może wejść"). Przekopiowalem dokladnie kod powyzej tutaj https://www.programiz.com/python-programming/online-compiler/ i wyszlo print("Nie może wejść")
Romuald Łukomski
Dziękuję za odpowiedź. ćw. wykonywałem w PyCharm i tam coś się pochrzaniło, bo napisałem w IDLE i tam zadziałało. Obecnie w PyCharm też nic nie działa, nie wiem co sie stało, chyba będę uczył się w IDLE. Pozdrawiam.
veneficus
@Romuald Łukomski: Postaraj się naprawić rzeczy w Pycharmie, sprawdź czy masz odpowiedniego Pythona itd. pokombinuj w IDLE na dłuższą metę będzie Ci ciężko.
stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:2 minuty
3

Minal prawie tydzien od pierwszego posta. A checi nadal sa i cwiczenia robione tez. Tak trzymac :)


λλλ
ZD
  • Rejestracja:około 3 lata
  • Ostatnio:ponad rok
  • Postów:2310
0

@Romuald Łukomski:

Załóż nowy watek "merytoryczny" w Pythonie.
Tutaj w C++ formuła "watku uniwersalnego" się już wyczerpała


If you put a million monkeys at a million keyboards, one of them will eventually write a Java program - the rest of them will write Perl
ZD
Ktoś go przeniósł ? Nie zauwżyłem, faktycznie
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
4

Skoro mam się przenieść do Python, to oczywiście się podporządkuję. Mam tylko nadzieję, że tam znajdę również cierpliwych i wyrozumiałych.
Wszystkim, którzy do tej pory cierpliwie mi pomagali bardzo dziękuję za wsparcie i dobre rady. Pomoc będzie mi oczywiście potrzebna. Życzę Wam pomyślności zawodowej i osobistej.

KS
  • Rejestracja:prawie 4 lata
  • Ostatnio:około godziny
  • Postów:577
1

@Romuald Łukomski:

Ciekawe,
zaznaczam, że nie czytałem większości dyskusji powyżej*.

Ze względu na wiek i chęć hobbystycznego podejścia do tematu. Zachęcam do nauki C++, mimo, że sam nie przepadam za tym językiem.
Reasumując jak się postanowiło, tak zrobić. Bo lepszy język na siłę zawsze się znajdzie.

Pare rad: Jest Kolega na emeryturze. Proszę nie poświęcać dziennie za dużo czasu na rozwiązywanie problemów, pewnie czasu jest nadto ale... Tak dwie godziny i wystarczy. Przetrawić sobie, pomyśleć i wyciągnąć ewentualnie jakieś wnioski. Warto zastanowić się, jaki to program chcielibyśmy napisać aby do czegoś nam się przydał. Już teraz, zapisywać sobie. Żeby potem nie głowić się jak tą wiedzę wykorzystać.
To jest zawsze bolączka początkującego, Chce coś napisać ale nie wie co. Potem zaś jak Kolega będzie już więcej umiał. A to może być za rok, dwa lata. To będzie miał kolega multum pomysłów i nie będzie wiedział za co się zabrać.
koniecznie zawsze kończyć projekty.

C++ to jest trochę studnia bez dna. Nie ma sensu poznać każdą pierdółkę w tym języku. Bo to strata czasu.
Niech Kolega międli podstawy, a potem pisze programy pod swój własny użytek. To powinno być tym kołem zamachowym dalszej nauki.
Czasami z ciekawości można doczytać jakąś nowinkę. Albo poczytać kod źródłowy nie swojego programu.

Na pewno pierwsze 2-4 miesiące to będzie takie macanie we mgle.

Pewnie warto by było pisać maleńkie programy które robią określoną rzecz/wykorzystują jakąś poznaną nowinkę. Aby szczególnie na początku się do tego odwołać.
Potem z biegiem czasu pewnie Kolega to skasuje, jednak na początku w ramach odświeżenia pamięci może to być pomocne.

Takie moje 5 groszy. Cierpliwość jest tu miarą sukcesu. Dać sobie 5 lat i trzymać kciuki, że się dożyje w przypadku Kolegi ;-)

Edit: na windowsie może być troszkę trudniej. Ale chyba codeblock udźwignie kompilacje c++. Bez męczenia się z Visual Studio.

edytowany 3x, ostatnio: ksh
CK
Już widzę jak autor tematu sobie poradzi z deklarowaniem typów, funkcją main, zakresem globalnym lub lokalnym- myślałem, że po prostu chciałeś wywołać burze. cytat: "Ze względu na wiek i chęć hobbystycznego podejścia do tematu . Zachęcam do nauki c++" - to zabrzmiało jak trolling, choć rozumiem, że nie miałeś takich intencji
stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:2 minuty
6

Zachęcam do nauki C++, mimo, że sam nie przepadam za tym językiem.

Nie! Nawet nie musze czytac dalej. Idz stad. Mega glupia rada. Na tym etapie nie ma absolutnie nic dydaktycznego w tym jezyku a jest milion klod pod nogami i sigsegv albo inne ub za kazdym rogiem.
Dalbym -1 jakby sie dalo.

I mowie to jako osoba, ktora uwaza niskopoziomowe rzeczy za bardzo ciekawe pod wzgledem know-how. Ale nie na poczatku przygody!


λλλ
edytowany 6x, ostatnio: stivens
kq
Ani nie w tym wieku, wg mnie. Imho to marnowanie cennego czasu, a mówię to jako osoba dość związana z C++.
vpiotr
ktora uwaza niskopoziomowe rzeczy za bardzo ciekawe - ale przecież C++ nie jest niskopoziomowy. C/ASM to jest niski poziom, C++ to raczej samowolka budowlana która zaczęła żyć własnym życiem, i wciąga kolejne rozwiązania ze świata (thread, async, moduły, ranges, concepts) - na swój unikalny sposób.
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
2

ksh
Bardzo dziękuję za wnikliwe uwagi, bardzo sobie je cenię. Naukę programowania zacząłem właśnie od C++. Podczas wykonywania różnych , prostych chyba, ćwiczeń pojawiało się wiele błędów. Znalazłem to forum i poprosiłem o wyjaśnienie błędów w ćwiczeniach. Spotkałem się z ogromną życzliwością. Wywiązała się dyskusja, w jakim języku powinienem zacząć przygodę z programowaniem i ostatecznie przekonano mnie do Pythona, jako w miarę prostego. Pobrałem więc owego Pythona i zalecane środowisko programistyczne. Znalazłem też na YouTube kurs programowania, który pilnie śledzę i wykonuję stosowne ćwiczenia. W razie problemów zwracam się z prośbą o pomoc w tutejszym forum i takiej pomocy doświadczam. Posiadam też broszurkę wydaną przez Komputer Świat, choć jest ona dość trudna w stosowaniu.
Co do pomysłu na jakiś własny program, to na razie jestem jeszcze w fazie poznawania możliwości języka, ale różne pomysły się powoli pojawiają. Na krystalizację przyjdzie jeszcze czas, na razie chcę umieć pisać bardzo proste programy, np. wybór jakiejś liczby z określonego zbioru, i tp.
Cierpliwości minie brakuje, a Pański tekst dużo mi pomógł.
Co do tych 5 lat, to mam plan na znacznie więcej, oczywiście nie nauki, to sądzę, że nastąpi prędzej.
Pozdrawiam.

CK
  • Rejestracja:około 4 lata
  • Ostatnio:około rok
2

Popełniłem pewien błąd przy omawianiu graficznego interfejsu użytkownika Pythona (gui) pyqt. Otóż nie byłem świadom że oferuje on takie narzędzie jak qt designer (designer.exe)
jest to dobra alternatywa dla Lazarusa. W qtdesigner przeciąga się butony, checkboxy itp z okna na aplikacje dopisuje lub wkleja akcje dla nich itp. To oszczędza ogromnie dużo czasu przy pisaniu kodu. Niestety żeby nie było różowo nie można z niego korzystać komercyjnie bez płatnej licencji. Tkinter za to jest całkowicie darmowy i to także do zastosowań komercyjnych - no ale jego toporność i brak takich udogodnień jak ma pyqt sprawia, że go nie polecam

Edycja: o qt designerze z pyqt dowiedziałem z książki "Hello world - computer programming for kids and other beginners" III Edycja - jest tam proste gui o obliczniu stopni farenhaita w pyqt (rozdział more gui) w polskim tłumaczeniu wyszła tylko druga Edycja: Hello world - Przygoda z programowaniem dla dzieci i absolutnie początkujących wydanie II -warren sande, carter sande. Niestety w polskim tłumaczeniu są błędy i jest tłumaczony kod

edytowany 4x, ostatnio: Czysty kod
CK
Edytowałem posta - w książce Hello World - jest o Pythonie z tymże jest podany błędny folder (w Pythonie) gdzie się znajduje designer exe chyba w folderze Pyqt Aplications jeżeli instalowaliśmy przez pip install
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
1

Cześć wszystkim.
Nie zasypiam gruszek w popiele, choć mozolnie mi to idzie. Tym razem chcę napisać programik, kory pomnoży dowolne liczby przez siebie i poda czy liczba jest parzysta , czy nie. No i mnożenie owszem wychodzi, ale już dalej nie wiem co zrobić, aby wynik podany w print mógł być dalej operowany. Proszę o pomoc, długo kombinuję ale bez skutku.
a = int (input("Podaj liczbę"))
b = int (input("Podaj liczbę"))
print ("ab= c = ", ab)
c = (a*b)
if c % 2==0
print ("liczba jest parzysta")
Do 3 linii jest wszystko ok, tak myślę, ale co dalej?

KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:12 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
2
  1. Twórz osobne wątki na takie pytania
  2. Jaki jest komunikat błędu
  3. Nie inicjalizujesz nigdzie ab
  4. co to w ogóle za język programowania?

UPDATE. Tfu, python, nie lubie pythona

Kopiuj
a = int (input("Podaj liczbę"))
b = int (input("Podaj liczbę"))
c = (a*b)
print ("ab= c = ", c)
if c % 2==0:
  print ("liczba jest parzysta")

Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
edytowany 2x, ostatnio: KamilAdam
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
0
KamilAdam napisał(a):
  1. Twórz osobne wątki na takie pytania
  2. Jaki jest komunikat błędu
  3. Nie inicjalizujesz nigdzie ab
  4. co to w ogóle za język programowania?

UPDATE. Tfu, python, nie lubie pythona

Kopiuj
a = int (input("Podaj liczbę"))
b = int (input("Podaj liczbę"))
c = (a*b)
print ("ab= c = ", c)
if c % 2==0:
  print ("liczba jest parzysta")

Ta odpowiedź niczego mi nie wyjaśnia.

Romuald Łukomski
Przepraszam, wszystko jest jasne i o to mi chodziło, dziekuje.
KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:12 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
1
Romuald Łukomski napisał(a):

Ta odpowiedź niczego mi nie wyjaśnia.

Ah, czyli nie chcesz wyświetlić informacji że jest parzysta tylko chcesz mieć tą informację do dalszego przetwarzania? Ok, teraz rozumiem, czyli coś bardziej:

Kopiuj
a = int (input("Podaj liczbę"))
b = int (input("Podaj liczbę"))
c = (a*b)
print ("ab= c = ", c)
isEven = c % 2==0
if isEven:
  print ("liczba jest parzysta")

Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
1
Romuald Łukomski napisał(a):
KamilAdam napisał(a):
  1. Twórz osobne wątki na takie pytania
  2. Jaki jest komunikat błędu
  3. Nie inicjalizujesz nigdzie ab
  4. co to w ogóle za język programowania?

UPDATE. Tfu, python, nie lubie pythona

Kopiuj
a = int (input("Podaj liczbę"))
b = int (input("Podaj liczbę"))
c = (a*b)
print ("ab= c = ", c)
if c % 2==0:
  print ("liczba jest parzysta")

Ta odpowiedź niczego mi nie wyjaśnia.

Jeszcze raz dziękuję za pomoc, nie wiedziałem właśnie jak sobie poradzić aby po "print" można było dalej coś zrobić.

Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
0

KamilAdam napisał między innymi abym tworzył oddzielne wątki z pytaniami. Myślę że ten wątek od początku służył mi do zadawania pytań i życzliwi ludzie mi tu pomagali, więc jeśli można to chciałbym pozostać, no chyba, że to niemożliwe.
Mam tym czasem jeszcze jedno pytanie : co znaczy, do czego służy w skrypcie (i w innych też to spotkałem ) "f" , przykład print(f"|{x}| =", -x)

stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:2 minuty
2

To literal dla f-stringow. f-stringi dzialaja tak, ze ewaluuja wyrazenia. Czyli np.

Kopiuj
x = "test"
print("{x}")

Wypisze na ekran {x} (bo to zwykly napis)

Kopiuj
x = "test"
print(f"{x}")

Wypisze na ekran test bo wyciagnal wartosc zmiennej x. Ale mozna tez pisac np. f"{3+5}"


λλλ
Romuald Łukomski
Dziękuję, teraz wszystko jasne.
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
0

Znowu pojawił mi się problem i to z pozoru prosty, z którym już problemu nie miałem, ale tym razem kod albo dział w nieskończoność, albo pokazuje True, ale nie wynik.
n = int(input('Podaj liczbe'))
while n < 20:
print(n % 2)
Proszę o pomoc.

Romuald Łukomski
No właśnie po podaniu liczby kod działa nieskończenie, lub nieskończenie pokazuje True
kq
Moderator C/C++
  • Rejestracja:ponad 11 lat
  • Ostatnio:2 dni
  • Lokalizacja:Szczecin
2

Nie zmieniasz wartości n


Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
0

Bardzo proszę o pomoc. Wracam do różnych kodów i ten nie dział, gdzie jest błąd:

Kopiuj
imie = input('Podaj imie:')
if imie == 'stop':
    break

wiek = input('Podaj wiek:')
print ('witaj', 'imie', '-->', int('wiek')**2 )

Wyrzuca mi błąd break, czemu?
Pozdrawiam.

edytowany 1x, ostatnio: flowCRANE
flowCRANE
Jeśli masz problem z konkretnym kodem to załóż osobny wątek w odpowiedniej kategorii, zamiast wszytstko wrzucać do jednego. Tym bardziej, że wątek ten otagowany jest jako dotyczący C++, a kod piszesz w Pythonie.
SA
  • Rejestracja:około 12 lat
  • Ostatnio:4 minuty
  • Postów:1426
2

@Romuald Łukomski: break służy do przerywania pętli, tu nie ma pętli. Zakładam, że tam jednak jest wcięcie, a program wygląda tak:

Kopiuj
imie = input('Podaj imie:')
if imie == 'stop':
    break

wiek = input('Podaj wiek:')
print ('witaj', 'imie', '-->', int('wiek')**2 )
edytowany 1x, ostatnio: Saalin
Romuald Łukomski
Ale gdzie jest różnica miedzy obydwoma kodami, przepraszam, ale nie widzę
SA
Teraz nie ma, bo @furious programming poprawił, ale wcześniej nie było wcięcia przed break.
Romuald Łukomski
Kod jednak nie działa. Przykład wziąłem z podręcznika 'Python w pigułce '(Komputer świat)
SA
Ten kod nie działa, a ja go nie poprawiałem, tylko umieściłem w znaczniki kodu dla czytelności. Musiałeś coś źle przepisać albo przepisać tylko fragment (np. całość jest w pętli while True).
Romuald Łukomski
  • Rejestracja:prawie 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:28
0

Tak to wygląda w podręczniku:
screenshot-20220607180535.jpg

SA
  • Rejestracja:około 12 lat
  • Ostatnio:4 minuty
  • Postów:1426
1

Super, jak widzisz obrazek zaczyna się na trzeciej linii, więc coś tam wyżej jeszcze jest, zachowanie programu (w konsoli) i wcięcie wskazuje, że całość znajduje się wewnątrz pętli, gwarantuję, że wyżej jest while True:.

Swoją drogą nic dziwnego, że ludzie wklejają kod jako obrazki skoro w książkach zamiast listingów są screenshoty 🤦

Romuald Łukomski
Rozumiem, czyli w podręczniku jest tylko cześć kodu, szkoda, bo to laika wprowadza w błąd. Dziękuję, teraz rozumiem, że błąd nie jest po mojej stronie. Wypróbuję z while True:.
Romuald Łukomski
Niestety wstawienie while True: tez nie działa, pewnie jeszcze coś jest potrzebne.
SA
  • Rejestracja:około 12 lat
  • Ostatnio:4 minuty
  • Postów:1426
2

@Romuald Łukomski: źle przepisałeś:

Kopiuj
while True:
    imie = input('Podaj imie:')
    if imie == 'stop':
        break

    wiek = input('Podaj wiek:')
    print ('witaj', imie, '-->', int(wiek)**2 ) # tu był błąd, wiek to zmienna, nie napis

Działa, sprawdziłem przed chwilą.

edytowany 1x, ostatnio: Saalin
Romuald Łukomski
Tak, po wstawieniu wcięć, zadziałało. choć tekstu "witaj" nie wyrzuciło, ale to już mniejsza, rozumiem teraz w czym rzecz. Szkoda tylko, że autor podręcznika jest mało precyzyjny. Dziękuję za pomoc i pozdrawiam.
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)