Podstawy informatyki
Transkrypt
Podstawy informatyki
Podstawy informatyki: plan zajęć: • 1-3 praca na linux • 5-7 programowanie w języku C zajęcia 4,8 – kolokwia • 4 zajęcia – kartka A4 z 8 poleceniami, komputer w trybie egzamin, praca na katalogu + wysłanie efektu pracy • 8 zajęcia – kolokwium z programowania, kartka A5 z zadaniem „napisz program w języku C, który...”, utworzenie, kompilacja i przesłanie kodu źródłowego zaliczenie – obydwa kolokwia zaliczone na ocenę pozytywną System operacyjny – zarządca zasobów. Komputer: • zasoby bierne – zasoby do wykorzystania (hardware) • zasoby czynne – procesy Tryb wywłaszczania – udostępnianie zasobów na określony czas System operacyjny ma zapewnić bezpieczeństwo dla obiektów (plików, procesów) użytkownika. „biały znak” - spacja, tabulator - ◊ (na zajęciach był to trójkącik ale nie chciało mi się szukać w symbolach ;)) Struktura polecenia: polecenie ◊ [opcja] ◊ [argument] [opcja] – zwykle jednoliterowa, poprzedzona minusem, w przypadku więcej niż jednej opcji dwie możliwośći zapisu: • -l ◊ -t ◊ -a ◊ • -lta (zalecane) kolejność opcji nie jest istotna (- lta działa tak samo jak -tal) [argument] – oddzielane jednym znakiem bialym, ma znaczenie kolejność wpisywania argumentów Wydawanie poleceń: • samo polecenie • polecenie + opcje • polecenie + argumenty • polecenie + argumenty + opcje pwd – pokazanie ścieżki katalogu cd – przejście do katalogu, możliwe sposoby: / .. ../.. ls – wylistowanie zawartosci katalogu - l – widok → lista (typ pliku, uprawnienia, liczba dowiązań, właściciel, grupa) - lh – to co w ls + wielkość plików - n – wszystkie pliki w katalogu razem z ukrytymi - t – sortowanie po modyfikacji Typy plików: _ - płaski, nieznany przez jądro d – katalog l – dowiązanie symboliczne b – blok informacji c – blok informacji p – połączenie między procesami s – połączenie między procesami Odczytywanie: 1 – typ pliku 2,3,4 – uprawnienia właściciel 5,6,7 – uprawnienia grupa użytkowników 8,9,10 – uprawnienia wszyscy Podstawy informatyki – laborki 18.11.2015 mkdir [nazwakatalogu] – tworzenie folderu cd WDI – skrócona ./WDI – pełna Tworzenie katalogu ze spacją w nazwie: mkdir „zajecia 2” zajecia\2 rmdir – usunięcie pliku touch [nazwapliku] – tworzenie pliku podstawowego mv [nazwapliku] [nowanazwa] – zmiana nazwy rm [nazwapliku] – usuwanie pliku - r [nazwakatalogu] – usuwanie rekurencyjne katalogu - fr [nazwakatalogu] – usuwanie wszystkiego bez pytania file [sciezkapliku] – sprawdzenie pliku bez jego uruchomienia (sprawdzenie typu pliku) polecenie: • standardowe wejście – klawiatura • standardowe wyjście – terminal • standardowe wyjście diagnostyczne – terminal cat [sciezkadopliku] – wyświetlenie zawartosci pliku na standardowym wyjściu more [scieżkadopliku] – wyświetlenie zawartosci pliku z możliwością jednorazowego przewinięcia less [ścieżkadopliku] – wyświetlenie zawartości pliku z możliwością przewijania i wyszukiwania • / - szukanie • q – wyjście tail [liczbalinii] [ścieżka] – podgląd końca pliku, domyslnie 10 head [liczbalinii] [ścieżka] – podgląd początku pliku, domyslnie 10 wc [nazwapliku] – statystyki pliku np. 56 (linii) 118 (slów) 3027 (znaków) - l – tylko ilość linii - w – tylko ilość słów - c - tylko ilość znaków \ - na końcu linii: • zakończenie ctrl + d • kontynuowanie w nowej linii Łączenie poleceń: polecenie 1 | polecenie 2 | polecenie 3 np. ls -al | less [sciezka] ls -al | w [sciezka] ls -al [sciezka] | tail -n+2 | wc -l ls -al [sciezka] | head -17 | tail -1 ls -al [sciezka] | tail -n+17 | head -1 - wypisanie wszystkich linii - wypisanie 17 linii - wypisanie 17 linii cal [miesiac] [rok] – kalendarz (bez [] - aktualny miesiąc) bc – kalkulator ; -l – naukowy; sqrt (x) – pierwiastek Zapisywanie plików: • • tryb override – polecenie > plik ◦ jeśli plik nie istnieje jest tworzony nowy ◦ jeśli plik istniał jego zawartoś jest kasowana tryb dopisywania – polecenie >> plik np. ls – al [sciezka] > ls1.txt ls -al [sciezka] | tail -n+2 > ls2.txt diff [nazwapliku1] [nazwapliku2] – porównanie zawartości plików po liniach history – historia wykonanych poleceń w terminalu Podstawy informatyki – laborki 8.11.2015 file [nazwapliku] – podejrzenie zawartości pliku bez jego otwierania ls – al | wc -l – wyświetlenie liczby wszystkich linii grep [opcja] [wyrazenie regularne] [*nazwa pliku*] np. cat /etc/passwd | grep 1 – wyszukanie llinii, która zawiera 1 w danym pliku cut – wycinanie kolumny liczbowej cat / etc / passwd | cut – c 1 cat / etc / passwd | cut d: - f 3,5 - wycięcie 1 kolumny znakowej (pierwsza litera) - wyszukanie 3 i 5 kolumny oddzielonej : grep „1” - wyrównanie szukania do lewej cat / etc / passwd / cut - d: -f 3,5 | grep „^1” cut -d [separator] – określenie separtora -f [nr pola] – określenie które pola mają zostać wyświeetlone ls -d [ścieżka katalogu] *s - pliki na s ? - dowolny znak s?????? - pliki na s mające 7 znaków grep „ „ 1 . .* \. $ - dosunięcie do lewego marginesu - jeden dowolny znak - powielenie dowolnego znaku (np. st* da wynik st, stt, sttt) - odebranie kropce supermocy - zakończenie linii np. ls / usr / include | grep „^s.*\.h$” - wyszukanie plików zaczynających się na s i kończących się na .h s…. s….$ - co najmniej 5 liter - 5 liter dokładnie Różnica: ls s** - dowolny plik z początkiem st grep „st*” - pliki st, stt, sttt, stttt grep [wyrażenie regularne] – c „[wyrażenie regularne]” [wyrażenie regularne] -w -i -v - liczenie zamiast szukania - jeśli w wyrażeniu są znaki specjalne np. „.” - jeśli w wyrażeniu nie ma znaków specjalnych - wylistowanie tylko pełnych ciągów - duże i małe litery nie mają znaczenia - wyniki „nie zawiera” wyrażenia regularnego Programowanie: vi [nazwa pliku] - uruchomienie kompilatora • dla istniejącego pliku załadowanie pliku • dla nowego – pusty edytor Po wykonaniu komendy vi program zostaje uruchomiony w trybie podstawowym (do odczytu) bez możliwości edycji. • i – możliwość edycji (insert) • a – również możliwość edycji (kursor w innym miejscu niż dla i) • ESC – powrót do trybu podstawowego • : - wiersz poleceń • w – zapisać • q – wyjść • q! - wyjśc bez zapisu • wq – wyjść i zapisać • x – usunięcie znaku w trybie podsawowym • dd – usunięcie całej linii Pod „#” zamieszczamy dyrektywy preprocesorów np. # include <iostream>. Zad. 1. „Hello world!” #include <iostream> using namespace std; int main (){ cout <<”Hello world!” << endl; return 0; } Kompilowanie programu: g++ [nazwapliku.cpp] -o [nazwapliku2] [nazwapliku.cpp] - skompilowanie pliku do nazwapliku2 - skompilowanie pliku do a_out WAŻNE!! Zwracać uwagę, żeby nazwapliku2 była różna od nazwapliku.cpp – inaczej program się usunie i nieskompiluje. Podstawy informatyki – laborki. 22.11.2015 zad. 1. 4 3 1 3 1 ¶ r ⇒ ¶ d ⇒ ∗pole∗d 3 6 6 math.h ← tablica zmiennych matematycznych /usr/include/math.h M_PI ← zmienna umożliwiająca użycie PI #define ROZMIAR 100 ← zmienna globalna, cały program będzie z tego korzystał Rodzaje zmiennych: • int – całkowite • float – do 7-8 miejsc po przecinku • float double – podwójna precyzja • float long double – mega precyzja ;) zmienne dla programu d, pole, obj. #include <iostream> #include <math.h> using namespace std; int main() { float d, pole, obj; cout << „Podaj srednice: „; cin >> d; d = fabsf(d); pole = M_PI * d * d; obj = pole * d / 6; cout << „Pole wynosi: „ << pole << endl; cout << „Objetosc wynosi: „ <<obj <<ednl; return 0; } zad. 2. Czytanie ciągu liczb całkowitych, gdzie wpisanie 0 kończy ciąg. Ile liczb parzystych jest w ciągu? #include <iostream> using namespace std; int main () { int i, liczba, parzystych; i = 1; parzystych = 0; do { cout << „Wpisz liczbe: „ << i << „ :”; cin >> liczba; if (liczba ! = 0 && liczba % 2 == 0) parzystych ++; i ++; } while (liczba !=0) cout << „Bylo: „ << parzystych << endl; } Zwiększanie liczby: • dla int – zarówno a=a+1 jak i a+=1 jak i a++ dadzą prawidłowy wynik • dla float – a=a+1, a+=1 są ok, a++ nie stosujemy (a++ - następna w ciągu dla float nie wiadomo jaka) Rzutowanie - np. (float)suma //tutaj był jeszcze program z obliczaniem średniej, ale niestety nie mam go zapisanego//