{"id":99,"date":"2019-08-23T20:32:57","date_gmt":"2019-08-23T20:32:57","guid":{"rendered":"http:\/\/www.linuxsystems.ovh\/?p=99"},"modified":"2020-05-25T16:28:56","modified_gmt":"2020-05-25T16:28:56","slug":"kalkulator-w-c","status":"publish","type":"post","link":"https:\/\/www.linuxsystems.ovh\/?p=99","title":{"rendered":"Kalkulator w C"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Z racji tego, \u017ce najlepiej uczy si\u0119 na praktycznych przyk\u0142adach, zadania b\u0119d\u0105 rozwi\u0105zywane z <a href=\"https:\/\/www.spoj.com\">https:\/\/www.spoj.com<\/a> &#8211; od razu pisz\u0119, \u017ce warto tam za\u0142o\u017cy\u0107 konto :).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zaczniemy od najprostszego zadania, czyli: <a href=\"https:\/\/www.spoj.com\/problems\/TESTINT\/\">https:\/\/www.spoj.com\/problems\/TESTINT\/<\/a><\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\">W zadaniu chodzi o to, \u017ce dostajemy 2 zmienne naturalne cyfry nie wi\u0119ksze ni\u017c 200 i mamy zwr\u00f3ci\u0107 ich sum\u0119.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A wi\u0119c zaczynaj\u0105c od szablonu dla naszego programu :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;stdio.h>\n\nint main(void){\n    return 0;\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Program powinien deklarowa\u0107 2 zmienne, nazwijmy je a i b, Jak kolejne litery alfabetu. Z zadania wynika, \u017ce s\u0105 to liczby naturalne (czyli bez przecink\u00f3w), nie wi\u0119ksze od 200, a wi\u0119c typ int wydaje si\u0119 do tego odpowiedni, wi\u0119c dajemy zmienna a i b typu int:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>int a,b;<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nast\u0119pnie musimy pobra\u0107 od u\u017cytkownika warto\u015bci do tych 2 zmiennych. S\u0142u\u017cy do tego funkcja scanf.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>scanf(\"%i\", &amp;a);<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W tym przyk\u0142adzie scanf pobierze znak typu int do zmiennej a, robimy tak\u017ce druga linijke z tym samym tylko zamieniamy literk\u0119 a na b I pobiera nam do zmiennej b:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>scanf(\"%i\", &amp;b);<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nast\u0119pnie funkcja printf wypisujemy sum\u0119 na konsoli. A wi\u0119c:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><code>printf(\"%i\", a+b);<\/code><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I tym oto sposobem powstaje na taki program:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;stdio.h>\n\nint main(void){\n    int a,b; \/\/ deklarujemy zmienn\u0105 a i b\n    scanf(\"%i\",&amp;a); \/\/ pobieramy zmienn\u0105 a\n    scanf(\"%i\",&amp;b); \/\/ pobieramy zmienn\u0105\u00a0b\n    printf(\"%i\",a+b); \/\/ wypisujemy wynik a+b\n    return 0; \/\/ zwracamy kod 0\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Krok po kroku wyja\u015bnijmy co robi ten program:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Linia 1 jest to za\u0142\u0105czanie standardowej biblioteki input\/output, aby m\u00f3c wy\u015bwietla\u0107 i pobiera\u0107 dane z konsoli. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Linia 3 jest to funkcja main(), funkcja main jest to g\u0142\u00f3wna funkcja w programie C i ZAWSZE ona musi by\u0107, je\u017celi piszemy jakikolwiek program. Jest ona poprzedzona s\u0142owem <strong>int<\/strong>, oznacza to, \u017ce b\u0119dzie zwraca\u0142a warto\u015b\u0107 typu integer, czyli liczby ca\u0142kowite ( o typach danych w C opisz\u0119 tak\u017ce przy okazji p\u00f3\u017aniejszych wpis\u00f3w ).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Linia 4 jest to deklaracja zmiennej a i b z komentarzem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Linia 5 jest to funkcja scanf, kt\u00f3ra pobiera typ int do zmiennej a.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Linia 6 jest to funkcja scanf, kt\u00f3ra pobiera typ int do zmiennej b.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Linia 7 jest to funkcja printf kt\u00f3ra wy\u015bwietla na ekranie typ int, a jako 2 parametr pokazujemy mu, \u017ce ma wy\u015bwietla\u0107 wynik r\u00f3wnania a+b.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Linia 8 zwracamy 0, aby program zwr\u00f3ci\u0142 &#8211; w tym przypadku systemowi operacyjnemu &#8211; \u017ce program si\u0119 zako\u0144czy\u0142 pomy\u015blnie z kodem 0.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tym oto sposobem napisali\u015bmy program, kt\u00f3ry: pobiera 2 zmienne i wy\u015bwietla ich sum\u0119.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mam nadziej\u0119, \u017ce rozumiecie to zagadnienie, je\u017celi co\u015b jest niezrozumia\u0142e prosz\u0119 o napisanie tego w komentarzu. Jest to m\u00f3j pierwszy wpis ucz\u0105cy programowania, dlatego te\u017c przepraszam za wszystkie b\u0142\u0119dy i niejasno\u015bci i bardzo prosz\u0119 o komentarz.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Z racji tego, \u017ce najlepiej uczy si\u0119 na praktycznych przyk\u0142adach, zadania b\u0119d\u0105 rozwi\u0105zywane z https:\/\/www.spoj.com &#8211; od razu pisz\u0119, \u017ce warto tam za\u0142o\u017cy\u0107 konto :). Zaczniemy od najprostszego zadania, czyli: https:\/\/www.spoj.com\/problems\/TESTINT\/<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"class_list":["post-99","post","type-post","status-publish","format-standard","hentry","category-c"],"_links":{"self":[{"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=\/wp\/v2\/posts\/99","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=99"}],"version-history":[{"count":11,"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=\/wp\/v2\/posts\/99\/revisions"}],"predecessor-version":[{"id":522,"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=\/wp\/v2\/posts\/99\/revisions\/522"}],"wp:attachment":[{"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=99"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=99"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxsystems.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=99"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}