Warsztat.GDCompo!ProjektyMediaArtykułyQ&AForumOferty pracyPobieranie

Opisz napotkaną sytuację, a redakcja niezwłocznie znajdzie rozwiązanie!

wyślij anuluj

Programowanie na przykładach

Tekst został importowany z Warsztatowej wiki. Jeżeli został importowany poprawnie, usuń ten szablon!

Czym jest programowanie na przykładach?

Często pojawiają się na forum pytania "od czego zacząć pisanie?" albo "czy macie przykład na ###?". Część z nas woli uczyć się programowania na przykładach. Często (szczególnie na początku) w zrozumieniu kawałka kodu może pomóc kilka różnych implementacji tego samego zadania. W celu nauki taką właśnie metodą stworzyliśmy listę zagadnień z dziedziny programowania w ogóle, programowania grafiki i programowania gier, które mogą się przydać początkującym. Zagadnienia te unaoczniają pewne fragmenty logiki aplikacji, które zaawansowanym programistom nie przysparzają większych problemów, ale dla początkujących mogą stanowić poważną przeszkodę.

Jak losować liczby? Jak wyświetlać coś na ekranie? Jak czytać pliki? Jak parsować tekst? Jak sterować obiektem na ekranie? Wszystkie te pytania mają przynajmniej kilkanaście różnych możliwych odpowiedzi. W celu pokazania kilku z nich część z przykładowych programów zostało zaimplementowanych przez użytkowników forum. Mamy nadzieję, ze analizując ich kod będzie Wam łatwiej zgłębić podstawy programowania.

Język ani biblioteki nie są narzucane, dzięki czemu można np. porównać implementację spadającego śniegu w SDL, SFML i Allegro; sortowanie w C, C# i JavaScript; pong w C++ i Javie. Liczy się różnorodność podejść do problemu.

__TOC__

Lista zagadnień

Poniżej znajduje się lista proponowanych zagadnień. Jeśli zaczynasz przygodę z programowaniem, możesz swobodnie wybrać jedno z nich i spróbować zaimplementować je samemu. Zachęcamy. Jeśli masz jednak problem a któryś z poniższych tematów jest linkiem do artykułu, masz szczęście - jest to problem opisany i zaimplementowany przez użytkowników forum. Możesz analizować czyjś kod i uczyć się dzięki niemu.

Niegraficzne aplikacje rozwiązujące proste problemy

# losowanie k liczb z przedziału m-n i wyświetlenie ich na ekranie

# odczyt pliku tekstowego i wyświetlanie na ekranie strona po stronie

# copy con

# rozwiązywanie równań liniowych z dwoma niewiadomymi

# odczyt pliku tekstowego, odwrócenie kolejności liter w słowach, zapis wyniku

# umieszczanie tekstu w konsoli w dowolnym miejscu i przy zadanym kolorze

# odwracanie tablicy w miejscu

# sortowanie na kilka sposobów (bubble sort, insertion sort, qsort, heap sort, counting sort)

# wskaźnik stanu klawiszy

Efekty graficzne

# wyświetlenie kolorowych punków w losowych miejscach ekranu lub okna aplikacji

# rysowanie kolorowych prostokątów w losowych miejscach ekranu lub okna aplikacji

# rysowanie linii w losowych miejscach ekranu lub okna aplikacji

# wypełnianie ekranu lub okna aplikacji losowym, kolorowym gradientem

# animowane fajerwerki

# udawany equalizer

# odbijająca się po ekranie lub oknie piłeczka

# "gra" w życie, "conway's game of life"

# spadający śnieg

# losowe pioruny

# dywan Sierpińskiego

# rysowanie paprotki przy pomocy L-systemu

# generowanie labiryntu widzianego z góry

# sprężynująca, spadająca kulka

# strzelająca armata

# mapa kafelkowa

# odczytywanie plików graficznych

# animowany ludek

Bardzo proste gry

# tekstowa gra "mniejsze/większe"

# tekstowa gra w wisielca

# tekstowe kółko i krzyżyk

# graficzna gra polegająca na unikaniu spadających kropek

# sterowana myszą gra typu whack a mole

# tetris

# arkanoid

# wąż

# gra w przechodzenie labiryntu

# memory

# saper

# pong

# tron

# PacMan

# prosta platformówka

# MasterMind

# Okręty

# Othello / Reversi

# Sudoku

# klon boomshine

Tekst dodał:
WarsztatBOT
08.12.2010 10:32

Ostatnia edycja:
WarsztatBOT
08.12.2010 10:32

Kategorie:

Aby edytować tekst, musisz się zalogować.

# Edytuj Porównaj Czas Autor Rozmiar
#1 edytuj 08.12.2010 10:32 WarsztatBOT 4.04 KB
Zwykły
Do sprawdzenia
Do akceptacji
  • Napisz komentarz:
    Aby dodać swój komentarz, musisz się zalogować.
Licencja Creative Commons

Warsztat używa plików cookies. | Copyright © 2006-2017 Warsztat · Kontakt · Regulamin i polityka prywatności
build #ff080b4740 (Tue Mar 25 11:39:28 CET 2014)