Programowanie i metody numeryczne - cz. I


Motto: There are 10 groups of people in the world:
those who understand binary and those who don't.

Zajęcia dla II roku trzyletnich studiów licencjackich na kierunku Astronomia.
Rok akademicki 2022/2023, semestr zimowy.



Reguły wymagania obecności: maksymalnie 2 nieobecności nieusprawiedliwione, punktualność!!!



Cel tych zajęć: myśleć i rozumieć.

Nic na pamięć, dowolne notatki lub podręczniki,

również w trakcie zaliczania zadań, na kartkówkach i kolokwiach.

     Dziennik Lekcyjny nieaktualizowany po 21 grudnia 2022 happy smiley





Nice try!

Reguły oceniania:


  • aktywność (w tym przygotowanie do zajęć i zadania domowe),
  • kartkówki,
  • zaliczenie zadań,
  • kolokwium zaliczeniowe z dopytaniem (niekoniecznie wszyscy)



Tematyka zajęć:


  1. Środowisko programistyczne dla języka C w Linux-ie. Pojęcia preprocesora, kompilatora i linkera.
  2. Pierwszy program w języku C , jego kompilacja i uruchomienie, poprawianie błędów - komunikaty kompilatora.
    Ściąga
    z języka C
  3. Podstawowe konstrukcje języka C: struktura pliku źródłowego, funkcja main, deklaracje, instrukcje, operatory.
  4. Instrukcje pętli, przykładowy program z pętlami, Anegdota o Gaussie w szkole podstawowej oraz jej poważna analiza happy smiley .
  5. KR: Elementarz - Przykład 1
  6. Wejście-wyjście: strumienie, stdout, stdin, stderr, przekierowania. str43.txt    wewy.c
  7. Typy danych, binarna postać danych w komputerze, przypomnienie: kodowania, precyzja i dokładność rachunków.
  8. Przetwarzanie strumienia wejściowego po znaku: zliczanie wystąpień, zmienne tablicowe, statystyka wystąpień znaków.
  9. Wprowadzanie danych liczbowych z klawiatury, scanf.
  10. Proste zadania numeryczne: badanie podzielności, weryfikacja wielkich liczb pierwszych. Liczby pierwsze
  11. Wprowadzanie kątowych danych liczbowych, dodawanie i normalizacja kątów.Ujemne zero
  12. Sumowanie szeregów, obserwacja zbieżności, kontrola dokładności, praca z funkcjami z biblioteki matematycznej. silnia.c    Szeregi (PDF)   Stałe z pliku math.h
  13. Czytanie danych z pliku, pisanie do pliku. pliki.c    zadanie
  14. Zmienne indeksowane, wektory i tablice wielowymiarowe.
  15. Programowanie różnych operacji na macierzach, program mnożenia macierzy Zestawy danych
  16. Generatory liczb losowych i ich zastosowanie w rachunkach numerycznych.O liczbach losowych, Zadania do wyboru
  17. Własna funkcja obliczeniowa, wektor w obracanym układzie współrzędnych.  Przykład1   Ściąga   -ansi -pedantic
  18. Wskaźniki (pointery) a tablice. O wskaźnikach
  19. Narzędzie do przeliczania współrzędnych punktu na sferze pomiędzy układami: horyzontalnym, równikowym, ekliptycznym i galaktycznym.   Opis metody  Przykładowe zestawy danych testowych
  20. Środowisko programistyczne - wprowadzenie (patrz projekt Geany).  Porady praktyczne (patrz też projekt Nemiver)

Literatura:

  • Na pracowni: /home/COMMON/teksty/kr
  • Brian W. Kerninghan, Dennis M. Ritchie, Język ANSI C, Wydawnictwo Naukowo- Techniczne, Warszawa
  • Brian W. Kerninghan, Dennis M. Ritchie, Język C, Wydawnictwo Naukowo-Techniczne, Warszawa
  • Podręcznik języka C na pl.wikibooks.org
  • Paweł Chomicz, Robert Ulijasz, Programowanie w języku C, poradnik programisty, Wydawnictwo PLJ, Warszawa, 1992
  • Neil Matthew, Richard Stones, LINUX-Programowanie, Wydawnictwo RM, Warszawa, 1999
  • Stephen Prata, Szkoła programowania; Język C, Helion, 2006
  • GCC, the GNU C Compiler
  • http://www.google.com.pl happy smiley