Skillnad mellan versioner av "Kap 1 Introduktion till programmering (C/Cpp 23)"
Taifun (Diskussion | bidrag) m |
Taifun (Diskussion | bidrag) m |
||
Rad 15: | Rad 15: | ||
<br> | <br> | ||
− | = <b><span style="color:#931136">1.1 | + | = <b><span style="color:#931136">1.1 Vad är programmering?</span></b> = |
<div class="ovnE"> | <div class="ovnE"> | ||
− | + | <big> | |
− | : | + | Var och en har ett intuitivt svar på denna fråga. Vi vill precisera svaret genom att: |
− | < | + | |
− | </ | + | Sätta begreppet i rätt sammanhang, avgränsa det från andra, närbesläktade ämnen. |
+ | |||
+ | Låt oss börja med att ge <i>negativa</i> svar: | ||
+ | |||
+ | Vi vill diskutera vad programmering <i>inte</i> är för att närma oss det positiva svaret. | ||
+ | </big> | ||
+ | |||
+ | == <b><span style="color:#931136">Tre negativa svar</span></b> == | ||
+ | <div class="ovnC"> | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Vad_Progr_1b.jpg]]</div> | ||
</div> | </div> | ||
+ | |||
+ | |||
+ | == <b><span style="color:#931136">Två positiva svar</span></b> == | ||
+ | <div class="ovnC"> | ||
+ | === <b><span style="color:#931136">1. Programmering som problemlösning</span></b> === | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Vad_Progr_2a.jpg]]</div> | ||
+ | |||
+ | |||
+ | === <b><span style="color:#931136">2. Programmering som modellering</span></b> === | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Program_Modell_650.jpg]]</div> | ||
+ | </div> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | = <b><span style="color:#931136">2.2 Kompilering och exekvering</span></b> = | ||
+ | <div class="ovnC"> | ||
+ | <big> | ||
+ | Hur hamnar programkoden i datorn? Det handlar om samspelet mellan mjukvaran och hårdvaran. | ||
+ | |||
+ | För att besvara frågan går vi tillbaka till de första datorerna. | ||
+ | </big> | ||
+ | |||
+ | == <b><span style="color:#931136">John von Neumann-modellen</span></b> == | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: John_Neuman_Datora.jpg]]</div> | ||
+ | |||
+ | |||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: John_Neuman_Texta.jpg]]</div> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | = <b><span style="color:#931136">Kompilering = översättning av källkod till maskinkod</span></b> = | ||
+ | <div class="ovnA"> | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Kompilering.jpg]]</div> | ||
+ | </div> | ||
+ | |||
+ | <!-- | ||
+ | = <b><span style="color:#931136">Fortsätt med att läsa i [http://mathonline.se:1806/boken%20progr%20cpp.pdf <span style="color:blue">kursboken</span>]:</span></b> = | ||
+ | --> | ||
+ | |||
+ | = <b><span style="color:#931136">Olika typer av fel</span></b> = | ||
+ | <div class="ovnE"> | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Olika_typer_fel.jpg]]</div> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | = <b><span style="color:#931136">2.3 Från C till C++</span></b> = | ||
+ | <div class="ovnC"> | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Fran_C_Cpp_1.jpg]]</div> | ||
+ | |||
+ | |||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Fran_C_Cpp_2.jpg]]</div> | ||
+ | |||
+ | |||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Fran_C_Cpp_3.jpg]]</div> | ||
+ | </div> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | = <b><span style="color:#931136">3.1 Vårt första C++ program</span></b> = | ||
+ | <div class="ovnE"> | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: MyFirstc.jpg]]</div> | ||
+ | |||
+ | |||
+ | <big><big>I själva verket får man detta fönster när man exekverar programmet <b>MyFirst</b>: | ||
+ | |||
+ | |||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: MyFirst_Consoleb.jpg]]</div> | ||
+ | |||
+ | |||
+ | Förvrängningarna av <b>ä</b> och <b>ö</b> åtgärdas senare, se programmet <b>MyFirstSwed</b>. | ||
+ | |||
+ | Först måste vi reda ut några begrepp: Varför kallar vi koden <b>MyFirst</b> för <b>program</b>?</big></big> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | = <b><span style="color:#931136">Vad är ett program i C/C++?</span></b> = | ||
+ | <div class="border-divblue"> | ||
+ | <big> | ||
+ | Ett C/C++ program är en samling av <b>funktioner</b> (C) och <b>klasser</b> (C++). | ||
+ | |||
+ | En och endast en av dessa funktioner måste vara <b>main()</b> som är start- | ||
+ | |||
+ | punkten för programmets exekvering. | ||
+ | |||
+ | Funktioner förekommer i <b>C</b> program, medan i <b>C++</b> kan även klasser vara | ||
+ | |||
+ | beståndsdelar av ett program. | ||
+ | |||
+ | I Visual Studio får det finnas endast <b>ett</b> main() i ett projekt. | ||
+ | </big> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | = <b><span style="color:#931136">Funktionen main()</span></b> = | ||
+ | <div class="ovnE"> | ||
+ | === <b><span style="color:#931136">Programmets exekveringspunkt</span></b> === | ||
+ | <div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Funktionen_maina.jpg]]</div> | ||
+ | </div> | ||
+ | |||
+ | |||
+ | = <b><span style="color:#931136">Gå vidare med [[Övningar 2 (C/Cpp)|<span style="color:blue">Dagens övningar</span>]] när du är klar med all läsning ovan.</span></b> = | ||
+ | |||
+ | |||
Versionen från 9 juli 2023 kl. 23.16
Mån 18 sep, kl 13-16
Agenda | Genomgång 1 | Övningar 1 | Nästa lektion >> |
1.1 Vad är programmering?
Var och en har ett intuitivt svar på denna fråga. Vi vill precisera svaret genom att:
Sätta begreppet i rätt sammanhang, avgränsa det från andra, närbesläktade ämnen.
Låt oss börja med att ge negativa svar:
Vi vill diskutera vad programmering inte är för att närma oss det positiva svaret.
Tre negativa svar
Två positiva svar
2.2 Kompilering och exekvering
Hur hamnar programkoden i datorn? Det handlar om samspelet mellan mjukvaran och hårdvaran.
För att besvara frågan går vi tillbaka till de första datorerna.
John von Neumann-modellen
Kompilering = översättning av källkod till maskinkod
Olika typer av fel
2.3 Från C till C++
3.1 Vårt första C++ program
I själva verket får man detta fönster när man exekverar programmet MyFirst:
Förvrängningarna av ä och ö åtgärdas senare, se programmet MyFirstSwed.
Först måste vi reda ut några begrepp: Varför kallar vi koden MyFirst för program?
Vad är ett program i C/C++?
Ett C/C++ program är en samling av funktioner (C) och klasser (C++).
En och endast en av dessa funktioner måste vara main() som är start-
punkten för programmets exekvering.
Funktioner förekommer i C program, medan i C++ kan även klasser vara
beståndsdelar av ett program.
I Visual Studio får det finnas endast ett main() i ett projekt.
Funktionen main()
Gå vidare med Dagens övningar när du är klar med all läsning ovan.
Copyright © 2023. All Rights Reserved.