Skillnad mellan versioner av "Övningar 40 (C/Cpp 23)"

Från Mathonline
Hoppa till: navigering, sök
m
m
 
(48 mellanliggande versioner av samma användare visas inte)
Rad 8: Rad 8:
 
{{Not selected tab|[[Kap 12 Databaser|Genomgång 40]]}}
 
{{Not selected tab|[[Kap 12 Databaser|Genomgång 40]]}}
 
{{Selected tab|[[Övningar 40 (C/Cpp 23)|Övningar 40]]}}
 
{{Selected tab|[[Övningar 40 (C/Cpp 23)|Övningar 40]]}}
{{Not selected tab|[http://www.mathonline.se/Cpp_innehall_strukt.pdf Innehåll & struktur]}}
+
{{Not selected tab|[https://sharedfiles.mathonline.se/Cpp_innehall_strukt.pdf Innehåll & struktur]}}
 
<!-- {{Not selected tab|[http://mathonline.se/Planering_Progr_Cpp_ht_23.pdf Planering]}} -->
 
<!-- {{Not selected tab|[http://mathonline.se/Planering_Progr_Cpp_ht_23.pdf Planering]}} -->
 
{{Not selected tab|[[Lektion 41 (C/Cpp 23)|Nästa lektion&nbsp;&nbsp;>> ]]}}
 
{{Not selected tab|[[Lektion 41 (C/Cpp 23)|Nästa lektion&nbsp;&nbsp;>> ]]}}
Rad 18: Rad 18:
 
<div class="ovnE">
 
<div class="ovnE">
 
<big>
 
<big>
* &nbsp; &nbsp; Läs <b><span style="color:red">Vad är en databas?</span></b> i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 158.
+
* &nbsp; &nbsp; Läs <b><span style="color:red">Introduktionen till databaser</span></b> i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <b><span style="color:blue">kursboken</span></b>], sid 317-318.
  
* &nbsp; &nbsp; Läs om <b><span style="color:red">Olika databasmodeller</span></b> i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 159.
+
* &nbsp; &nbsp; Läs om <b><span style="color:red">Relationsdatabaser</span></b> i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <b><span style="color:blue">kursboken</span></b>], sid 319-322.
  
* &nbsp; &nbsp; Läs om <b><span style="color:red">Relationsdatabaser</span></b> i [http://mathonline.se:1802/Boken%20Alg%20Datastr%20Design.pdf <b><span style="color:blue">kursboken</span></b>], sid 160-167.
+
* &nbsp; &nbsp; Läs om <b><span style="color:red">Mängdlära och databaser</span></b> i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <b><span style="color:blue">kursboken</span></b>], sid 323-327.
  
 
* &nbsp; &nbsp; Besvara nedanstående frågor om databaser.
 
* &nbsp; &nbsp; Besvara nedanstående frågor om databaser.
Rad 37: Rad 37:
 
= <b><span style="color:#931136">Frågor om databaser</span></b> =
 
= <b><span style="color:#931136">Frågor om databaser</span></b> =
 
<div class="ovnC">
 
<div class="ovnC">
<big>
+
<big>  
1) &nbsp; Med vilken kod allokeras minne för vanliga variabler?
+
1) &nbsp; Begreppet databas kan betyda olika i olika sammanhang.
  
2) &nbsp; Nämn tre saker som händer när man deklarerar och initierar variabler av enkel datatyp.
+
:Redogör för de två mest relevanta betydelser (sammanhang) som begreppet används inom IT.
  
3) &nbsp; Är "pekare" en datatyp?
+
2) &nbsp; Vilken databasmodell har i praktiken visat sig vara den mest effektiva strukturen för lagring
  
4) &nbsp; Är pekare-till-int en enkel eller en sammansatt datatyp? Eller inget av dem?
+
:av information? Med avseende på vilka kriterier har den visat sin överlägsenhet?
  
5) &nbsp; Varför kan man kalla pekaren för ett parallellt system? Parallellt till vad?
+
3) &nbsp; Beskriv med egna ord de viktigaste egenskaperna hos relationsdatabaser.
  
6) &nbsp; Är pekare ett nytt koncept som har kommit till när C++ skapades?
+
:Vad är deras minsta modul?  
  
7) &nbsp; Hur ska man tolka talesättet "p pekar på a"?
+
4) &nbsp; Definiera begreppet relation mellan två mängder.
  
8) &nbsp; Kan pekaren ersätta namnet till en vanlig variabel?  
+
5) &nbsp; På vilket sätt kan man beteckna en tabell som en relation? I så fall relation mellan vilka mängder?  
  
9) &nbsp; Om 5 är värdet till en int-variabel, vad är då "värdet" av en pekare som pekar på a?
+
6) &nbsp; Vad består en tabell av?
  
10) &nbsp; Kan adressoperatorn & skrivas framför en deklarerad, men oinitierad vanlig variabel?
+
7) &nbsp; Om en tom tabell kan jämföras med en klass, vad i tabellen är motsvarigheten till klassens
  
11) &nbsp; Kan adressoperatorn & skrivas framför en pekarvariabel? Om ja, vad är resultatet?
+
:datamedlemmar? Vad kan ett objekt av denna klass jämföras med?  
  
12) &nbsp; Vad är fördelen med att använda hexadecimala tal för representation av adresser?
+
8) &nbsp; Vad innebär modularisering i samband med databaser?
  
13) &nbsp; Hur många bytes behövs för lagring av adresser?
+
9) &nbsp; Varför leder modularisering till att etablera relationer mellan tabeller?
  
14) &nbsp; Kan man initiera en pekarvariabel utan att ha deklarerad en vanlig variabel?
+
10) &nbsp; När är en mängd väldefinierad?
  
15) &nbsp; På sid 276 i kursboken (sid 5 i texten "Kap 10 Pekare") finns det skrivfel.
+
11) &nbsp; Vilka operationer kan utföras på mängder? Med vilket grafiskt verktyg kan man visualisera dem?
  
: &nbsp; Kan du hitta dem?
+
12) &nbsp; Ange mängden <math> \{1, 2, 3, 4, 5\} \;\cap\; \{4, 5, 6, 7, 8\} </math>
  
16) &nbsp; Vilka två betydelser har asterisken * i pekarsammanhang?
+
13) &nbsp; Ange mängden <math> \{0, 2, 4\} \;\cup\; \{1, 3, 5\} </math>
  
17) &nbsp; Vad är den inversa operatorn till adressoperatorn & ?
+
14) &nbsp; Låt <math>A = \{1, 2, 3, 4\}</math>, <math>B = \{4, 5, 6\}</math> och <math>C = \{5, 6, 7\}</math>. &nbsp; Bestäm:
  
18) &nbsp; Kan värdeoperatorn * skrivas framför en vanlig variabel?
+
: &nbsp; a) <math> \;(A \cup B) \cap C\; </math>
  
19) &nbsp; Vad betyder *(&vanligVar)?
+
: &nbsp; b) <math> \;(A \cap B) \cup C\; </math>
  
20) &nbsp; Vad betyder &(*pekarVar)?
+
15) &nbsp; Vad är en kartesisk produkt av två mängder?
  
21) &nbsp; Kan värdeoperatorn tillämpad på en pekare ersätta namnet på en vanlig variabel?
+
16) &nbsp; Låt <math> A = \{1, 2, 3\} </math> och <math> B = \{f, g, h\} </math>. Skriv den kartesiska produkten <math> A \times B </math>.
  
22) &nbsp; Om svaret på frågan 21 ovan är ja, vad är förutsättningen för det?
+
17) &nbsp; Skriv en relation R mellan <math> A = \{4, 5, 6\} </math> och <math> B = \{i, j, k\} \qquad\qquad\qquad\quad</math>
 +
</big>[[Lektion_41_(C/Cpp_23)#Agenda|<small>Tillbaka >> <b><span style="color:blue">Agenda 41</span></b></small>]]
 +
</div>
  
23) &nbsp; Om adressen till platsen där en bil är parkerad, kan jämföras med pekaren till en 
 
  
: &nbsp; vanlig variabel, vilken annan information om bilen som identifierar bilen, kan jämföras
+
= <b><span style="color:#931136">Övning 12.1</span></b> =
 
+
<div class="ovnE">
: &nbsp; med den vanliga variabeln?
+
<big>
 
+
&nbsp; &nbsp; Lös övning 12.1 nedan (ur [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <b><span style="color:blue">kursboken</span></b>], övningar till kap 12, sid 383):
24) &nbsp; Vad gör satsen int *pekInt = new int; ?
+
 
+
25) &nbsp; Vad händer om man efter satsen i fråga 24 ovan skriver *pekInt = 78; ?
+
 
+
26) &nbsp; Hur kan man modifiera satsen i fråga 24, för att inkludera i den satsen i fråga 25?
+
 
+
27) &nbsp; Är arrayen som skapas i satsen int *no = new int[4]; redan initierad?
+
 
+
28) &nbsp; Vad ersätts en arrays indexering av, om den skapas av new?
+
 
+
29) &nbsp; Om man skickar en array av char som aktuell parameter till en funktion, kan den
+
 
+
: &nbsp; formella parametern vara av en annan datatyp? I så fall vilken?
+
 
+
30) &nbsp; Vad avgör vilken metod för parameteröverföring C++ väljer vid anrop av funktioner?
+
 
+
31) &nbsp; När tillämpas automatiskt värdeanrop och när referensanrop vid överföring av
+
 
+
: &nbsp; en funktions parametrar?
+
 
+
32) &nbsp; Vad är skillnaden mellan värde- och referensanrop?
+
 
+
33) &nbsp; Redogör för- och nackdelarna av arraynotation gentemot pekarnotation?
+
 
+
34) &nbsp; Kan man blanda array- och pekarnotation i ett C++ program?
+
 
+
35) &nbsp; Varför har man i andra universella programmeringsspråk som t.ex. C#, Java, Python, ...
+
 
+
: &nbsp; avskaffat pekarkonceptet?
+
 
</big>
 
</big>
</div>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Ovn_12_1a.jpg]]</div>
 
+
 
+
<div class="border-divblue">
+
=== <b>Fortsätt med att använda en del av övningstiden för [[Kap_8_Klasser_(25)#Inl.C3.A4mningsuppgift_3|<span style="color:blue">Inlämningsuppgift 3</span>]].<br><br>Deadline är den 15/12.</b> ===
+
 
</div>
 
</div>
  

Nuvarande version från 31 oktober 2024 kl. 10.18

Mån 27 nov, kl 13-16


        <<  Agenda          Genomgång 40          Övningar 40          Innehåll & struktur          Nästa lektion  >>      


Dagens övningar

  •     Läs Introduktionen till databaser i kursboken, sid 317-318.
  •     Läs om Relationsdatabaser i kursboken, sid 319-322.
  •     Läs om Mängdlära och databaser i kursboken, sid 323-327.
  •     Besvara nedanstående frågor om databaser.
   Svar till alla frågor kan du hitta i texterna ovan.
   Skriv gärna dina svar i ett textdokument.
   Ingen inlämning krävs. Arbeta gärna gruppvis.


Frågor om databaser

1)   Begreppet databas kan betyda olika i olika sammanhang.

Redogör för de två mest relevanta betydelser (sammanhang) som begreppet används inom IT.

2)   Vilken databasmodell har i praktiken visat sig vara den mest effektiva strukturen för lagring

av information? Med avseende på vilka kriterier har den visat sin överlägsenhet?

3)   Beskriv med egna ord de viktigaste egenskaperna hos relationsdatabaser.

Vad är deras minsta modul?

4)   Definiera begreppet relation mellan två mängder.

5)   På vilket sätt kan man beteckna en tabell som en relation? I så fall relation mellan vilka mängder?

6)   Vad består en tabell av?

7)   Om en tom tabell kan jämföras med en klass, vad i tabellen är motsvarigheten till klassens

datamedlemmar? Vad kan ett objekt av denna klass jämföras med?

8)   Vad innebär modularisering i samband med databaser?

9)   Varför leder modularisering till att etablera relationer mellan tabeller?

10)   När är en mängd väldefinierad?

11)   Vilka operationer kan utföras på mängder? Med vilket grafiskt verktyg kan man visualisera dem?

12)   Ange mängden \( \{1, 2, 3, 4, 5\} \;\cap\; \{4, 5, 6, 7, 8\} \)

13)   Ange mängden \( \{0, 2, 4\} \;\cup\; \{1, 3, 5\} \)

14)   Låt \(A = \{1, 2, 3, 4\}\), \(B = \{4, 5, 6\}\) och \(C = \{5, 6, 7\}\).   Bestäm:

  a) \( \;(A \cup B) \cap C\; \)
  b) \( \;(A \cap B) \cup C\; \)

15)   Vad är en kartesisk produkt av två mängder?

16)   Låt \( A = \{1, 2, 3\} \) och \( B = \{f, g, h\} \). Skriv den kartesiska produkten \( A \times B \).

17)   Skriv en relation R mellan \( A = \{4, 5, 6\} \) och \( B = \{i, j, k\} \qquad\qquad\qquad\quad\) Tillbaka >> Agenda 41


Övning 12.1

    Lös övning 12.1 nedan (ur kursboken, övningar till kap 12, sid 383):

Ovn 12 1a.jpg



Extra uppgifter

För alla som önskar ha mer att koda (frivillgt):
\( \qquad\;\;\, \)\( \qquad\;\;\, \)








Copyright © 2023. All Rights Reserved.