Fråga 11. Vad skrivs ut? Fråga 12. Vad skrivs ut? Fråga 13. Vad skrivs ut? x=x+y; y=x-y; x=x-y;

Relevanta dokument
Programmering Grundkurs (HI1900) Teoridel

Belopp Belopp > procent

Uppgifter att lösa 1,1,2,3,5,8,13,21...

Fråga 13. Skriv en loop som fyller arrayen int v[100] med talen

Enkla uppgifter. Uppgift 1. Uppgift 2

a = a a a a a a ± ± ± ±500

Följande, ur problemsynpunkt enkla uppgifter, är till för att nöta in dagens teori.

2.1 Variabler. 2.2 Regler för namngivning i C. Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Föreläsning 2

Föreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera

Pseudokod. Arbetets gång

Matematiska uppgifter

Fråga 5. Vad krävs av funktionen undersok(a) för att b ska ökas med 1 respektive minskas med 1?

Programmering i C, 7,5 hp

Loopar och datatyper. Föreläsning 3

Loopar och datatyper. Föreläsning 3

Sidor i boken 8-9, 90-93

17.1 Kontinuerliga fördelningar

Data, typ, selektion, iteration

1,3,5,7,9,...,99. Skriv ett program som genererar en multiplikationstabell med följande utseende

4. Bestäm alla trippler n 2, n, n + 2 av heltal som samtliga är primtal. 5. Skriv upp additions- och multiplikationstabellen för räkning modulo 4.

Problemlösning (3/5) Lösningar

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Detta är andra problemlösningsföreläsningen, vi diskuterar problemen ur Problem II.

"if"-satsen. Inledande programmering med C# (1DV402)

Repetition inför tentamen

Föreläsning 4. Val, boolska värden, läsbarhet, osv

Inledande programmering med C# (1DV402) Summera med while"-satsen

Kvalificeringstävling den 30 september 2008

3.3 for-satsen. Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Föreläsning 3

TDIU01 - Programmering i C++, grundkurs

Problemlösning Lösningar

Instuderingsfrågor, del A

HI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: Fredagen den 21 oktober 2011,

Programmering Grundkurs (6H2950) Grundläggande Programmering (6A2001)

Sidor i boken f(x) = a x 2 +b x+c

Programmering, grundkurs, 8.0 hp HI1024, TEN1. Fredagen den 2 mars 2012

Inledande programmering med C# (1DV402) 27+15=42 1 (22)

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??

Uttryck och villkor. Föreläsning 2

Sidor i boken V.L = 8 H.L. 2+6 = 8 V.L. = H.L.

Uppg. 1: Sofie och Maria är syskon. För deras åldrar gäller följande samband: Summan är lika stor som produkten. Hur gamla är Sofia och Maria?

Programmering, grundkurs, 8.0 hp HI1024, omtentamen, TEN1. Tisdagen den 7 juni 2011,

2D1311 Programmeringsteknik för Bio1 och Bio2, vt 2003 Fiktivt prov På flervalsfrågorna är endast ett svar rätt om inget annat anges i frågan! Det rik

Trigonometri. Sidor i boken 26-34

Student för elever på kurs Ma 4 och Ma 5

TAIU07 Matematiska beräkningar med Matlab

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Övningsuppgifter kapitel 8

Programmering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1. Måndagen den 10 januari 2011,

Definition av kombinatorisk logik Olika sätt att representera kombinatorisk logik Minimering av logiska uttryck

Finaltävling i Uppsala den 24 november 2018

Programmeringsteknik med C och Matlab

Övningsuppgifter till föreläsning 2 Variabler och uttryck

Talmängder. Målet med första föreläsningen:

SKOLORNAS MATEMATIKTÄVLING Svenska Matematikersamfundet. Lösningsförslag till naltävlingen den 20 november 2004

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

Sidor i boken Figur 1:

Repetera snabbt vad du lärde dig förra veckan. Du är nu redo att kasta dig in i nästa fas, teorin om villkor.

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010

översiktskurs (5DV031)

Programmering i C. Christer Sandberg, Gunilla Eken, Stefan Bygde Olof Andersson Linus Källberg Caroline Uppsäll Johan Hägg

TENTAMEN. Rättande lärare: Sara Sebelius & Håkan Strömberg Examinator: Niclas Hjelm Datum:

TENTAMEN. HF1002, 6H3120, 6H3117 Diskret Matematik. Skrivtid 8:15-13:15. Måndag 8 juni Tentamen består av 4 sidor.

Funktioner. Räta linjen

Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter.

5B1134 Matematik och modeller Lösningsförslag till tentamen den 13 januari T = 1 ab sin γ. b sin β = , 956 0, 695 0, 891

Uttryck och villkor. Föreläsning 2

Högstadiets matematiktävling 2018/19 Finaltävling 19 januari 2019 Lösningsförslag

Finaltävling i Lund den 19 november 2016

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Känguru 2019 Student gymnasiet

Kort om programmering i Matlab

*Pekarvärden *Pekarvariabler & *

Polynomekvationer. p 2 (x) = x x 3 +2x 10 = 0

{ } { } En mängd är en samling objekt A = 0, 1. Ex: Mängder grundbegrepp 5 C. Olof M C = { 7, 1, 5} M = { Ce, Joa, Ch, Je, Id, Jon, Pe}

TENTAMEN. Matematik 1 Kurskod HF1903 Skrivtid 13:15-17:15 Onsdagen 25 september 2013 Tentamen består av 3 sidor

HI1024 Programmering, grundkurs TEN

Johan Karlsson Datavetenskap för teknisk kemi, 10p, moment 1 Datavetenskap Umeå Universitet. Tentamen

TENTAMEN. HF1002, 6H3120, 6H3117 Diskret Matematik. Skrivtid 13:15-18:15. Torsdagen 7 juni Tentamen består av 5 sidor.

Logik och kontrollstrukturer

HI1024 Programmering, grundkurs TEN

Föreläsning 9. Repetition och exempelproblem

HI1024 Programmering, grundkurs TEN

KS övning 1. Problem 1. Beräkna Problem 2. Förenkla. (x 1 3 y

TENTAMEN. HF1002, 6H3120, 6H3117 Diskret Matematik. Skrivtid 13:15-18:15. Onsdagen 12 mars Tentamen består av 6 sidor.

Objektorienterad programmering Föreläsning 4

Inlämningsuppgift, LMN100

TENTAMEN. HF1002, 6H3120, 6H3117 Diskret Matematik. Skrivtid 13:15-18:00. Fredag 28 maj Tentamen består av 4 sidor.

Fråga 15. Följande deklarationer är givna

Trepoängsproblem. Kängurutävlingen 2011 Cadet. 1 Vilket av följande uttryck har störst värde? 1 A: B: C: D: E: 2011

Svar och arbeta vidare med Student 2008

Lektion Kapitel Uppgift Lösning med programmering

Inledande programmering med C# (1DV402) 85/2=42. OBS! Heltal 1 (13)

C++ Slumptalsfunktioner + switch-satsen

Finaltävling i Umeå den 18 november 2017

Matematisk kommunikation för Π Problemsamling

Enkla datatyper minne

Formelhantering Formeln v = s t

kl Tentaupplägg

NMCC Semifinal

Uppgift 1 ( Betyg 3 uppgift )

Transkript:

Håkan Strömberg KTH STH 1 Fråga 1. Vilka värden har c, e och f efter att de tre tilldelningssatserna har exekverats? int a=3, b=10; float c,d=2.0,e,f; c=b/a; e=b/a+d; f=d*b/a; Fråga 2. Skriv ett logiskt uttryck, som är sant om heltalsvariabeln X är jämnt delbart med 7 och/eller 5. Fråga 3. Ange i en liten tabell exempel på heltalsvärden till A och B, som producerar var och en av de fyra utskrifterna i if-satsen nedan. if(a>3) if(b<4) printf("ett\n"); printf("två\n"); if(b<4) printf("tre\n"); printf("fyra\n"); Fråga 4. För vilka heltalsvärden på A är följande logiska uttryck sant? A>3 && A<10 && A%3==1 Fråga 5. Variabeln ALDER anger ålder och variabeln KOEN anger kön (1=kvinna, 2=man). Skriv ett logiskt uttryck, som är sant för kvinnor och barn. Personer under 18 år betraktas som barn. Fråga 6. Skriv en rutin som bestämmer summan av de två mittersta siffrorna i ett fyrsiffrigt tal. Exempelvis: 5391 blir 12 och 6713 blir 8. Det fyrsiffriga talet finns ursprungligen lagrat i variabeln T och resultatet ska lagras i variabeln S. Fråga 7. Vilket värde har a efter följande satser? int a=1; if (a==1) a++; if (a==2) a+=2; if (a==3) a+=3; if (a==4) a+=4; Fråga 8. I följande rutin vill man skriva ut resultatet med två decimaler, ändra därför tilldelningssatsen så att önskat resultat erhålles. Punkterna markerar endast satser där a och b tilldelas värden. int a=7,b=6; float c;... c=a/b; printf("%5.2f\n",c); Fråga 9. Skriv ett villkor som är sant om N (tvåsiffrigt heltal) har en tiotalssiffra som är större än 6 och en entalssiffra som är mindre än 3. Fråga 10. Vilken/vilka av följande namn är tillåtna som identifierare (namn på funktioner, konstanter och variabler)? antal_hus längd unsigned 91karlsson year2002 next-day Fråga 11. Vad skrivs ut? int a=0,b=1,c=2,d=3; if(a<b b>c) printf("x\n"); if(a<b&&b>c) printf("y\n"); if((a<b)&&(b>c!(c>d))) printf("z\n"); Fråga 12. Vad skrivs ut? int a=0,b=1,c=2,d=3; if(a<b) printf("a\n"); if(b<c && c<d) printf("b\n"); Fråga 13. Vad skrivs ut? int a,b=4,c=6; double d=3.0; a=c/b; printf("%d\n",a); b=c%b; printf("%d\n",b); a=d/c; printf("%d\n",a); Fråga 14. Skriv ett villkor som är sant om och endast om den första siffran i ett tvåsiffrigt heltal x är större än den andra. Fråga 15. Skriv en rutin som simulerar kast med en vanlig tärning. Träningens ögonen läggs ihop tills man slår en etta. Slutsumman, med den avslutande ettan inkluderad skrivs ut. Fråga 16. Vad sker i rutinen nedan? Variablerna x och y är av typen int och har tilldelats värden tidigare högre upp i programmet. Anm: Du skall inte kommentera varje rad för sig, utan förklara vad hela rutinen gör, på ett så enkelt sätt som möjligt. x=x+y; y=x-y; x=x-y; Fråga 17. Skriv ett logiskt uttryck, som är sant då de tre variablerna x,y och z alla har olika värden.

Håkan Strömberg KTH STH 2 Fråga 18. Längden hos triangelns tre sidor är givna och finns lagrade i variablerna a, b och c. Med hjälp av Herons formel: där T = s(s a)(s b)(s c) s = a+b+c 3 kan man bestämma triangelns area T. Översätt dessa formler till en rutin i C, som beräknar T. Fråga 19. Vilka värden får de tilldelade variablerna efter följande satser? int a,b; float c,d; a=37/10; b=37.0/10; c=37/10; d=37/10.0; Fråga 20. Vilka värden har a och b efter följande rutin? int a=5,b=4; if (a==b) a++; b++; if (a==b){ a++; b++; Fråga 21. Skriv ett logiskt uttryck som är sant då A s värde är större än dubbla B s värde, men inte större än tre gånger B s värde. A och B är deklarerade int Fråga 22. En tidpunkt lagras i två variabler, aktuell timme i tim och aktuell minut i min. Skriv ett villkor som är sant då tidpunkten är senare än kl 21 : 35. Fråga 23. Variabeln x är deklarerad float. Skriv en rutin som skriver ut den andra decimalen. Fråga 24. För vilka heltalsvärden är följande logiska uttryck sant? a>5 && a<21 && a%4==1 Fråga 25. Vilka värden har c1, c2 och c3 efter de tre tilldelningssatserna nedan? int a=5, b=12; float c1,c2,c3; c1=b/a; c2=(float)b/a; c3=b/2*a; Fråga 26. Skriv ett logiskt uttryck, som är sant då då x har ett värde som ligger mellan y och z. Fråga 27. Skriv ett villkor som är sant om det mittersta siffran i det tresiffriga positiva heltalet x är summan av de andra två siffrorna. Fråga 28. Vilket är det minsta positiva heltalsvärde variabeln A kan ha för att ge variabeln B värdet 3 efter att rutinen nedan har exekverats? B=0; if(a%2==0) B++; if(a%3==0) B++; if(a%5==0) B++; Fråga 29. Vilket värde får a, deklarerad int, genom satsen nedan. a=5+3*2+(4+5)/3*2 Fråga 30. Skriv ett logiskt uttryck som är sant då heltalsvariabeln x inte ligger i intervallet [1...1000]. Hakparenteser uttrycker att gränserna ingår i ett intervall. Fråga 31. Variabeln farg kan anta två värden 1 (gul) och 2 (blå) och variabeln modell kan likaså anta två värden, 1 (M1020) och 2 (M3030). Skriv en rutin som med hjälp av variablerna farg och modell tilldelar variabeln pris dess rätta värde, vilket Du finner i tabellen nedan. Blå Gul M1020 65.50 78.00 M3030 79.00 93.50 Fråga 32. Vilka värden får a och b efter följande satser? a=56.78976; a=(int)(a*100+0.5)/100.0; b=56.78976; b=(int)(b*10000+0.5)/10000.0; Fråga 33. Skriv en kortare variant på det logiska uttrycket: a==b b<a Fråga 34. Vilket värde har a efter följande rader int a=23; a=a/4+a%4; Fråga 35. Man vill ha reda på om heltalsvariabeln i har något av värdena [2,4,6,8...30]. Skriv det villkor som behövs. Fråga 36. Hur åstadkommer man utskriften "Hej", sa Lucia

Håkan Strömberg KTH STH 3 Fråga 37. Detta lilla program, är tänkt att inledningsvis fråga efter antal och sedan efter lika många tal som successivt summeras. Talens summa skrivs sedan ut. Men programmet innehåller fyra nybörjarfel finns minst tre av dem! void main(void){ float sum,tal; int n; printf("antal: "); scanf("%d",n); for(k=1;k<=n;k++){ printf("tal: "); scanf("%d",&tal); sum=sum+tal; printf("summan=%6.3f\n",sum); Fråga 38. Med detta program vill man bestämma sitt sparkapital efter ett år med 8% ränta. Men programmet fungerar inte som det ska varför? void main(void){ int ranta=8; float kapfore=18500,kapefter; kapefter=kapfore*(1+ranta/100); printf("kapital= %.2f",kapefter); Fråga 39. Nedan ser du två logiska uttryck där operatorn icke har används. Skriv om dem utan att använda!, men så att de får samma funktion.!(a<=b+3)!(a>2 b<5) Fråga 40. Skriv ett logiskt ut tryck som bara är sant då värdet hos heltalsvariabeln x är udda och ligger i intervallet [19... 37], inklusive gränser. Fråga 41. Vilka av följande logiska uttryck är sanna? Alla rätt krävs. int c1=1,c2=2,c3=3; a) c1==1 c2==1 && c3==1 b) c2==1 && c3==3 c1==2 && c2==2 c)!(c2==1) d)!(c1==1)!(c3==1) Fråga 42. För vilka värden hos variabeln a är detta logiska uttryck sant? a>=1 && a<=40 && a%5==1 && a%7==1 Fråga 43. Vilket värde måste a och b tilldelats tidigare om c får värdet 11 i följande rutin? c=0; if(a*b>35) c=c+1; if(a+b<13) c=c+2; if(a-b>3) c=c+4; if(a%b==0) c=c+8; Fråga 44. Inköpspriset i är givet och nu ska skatten s beräknas med hjälp av följande tabell, som antingen ges som ett konstant belopp eller som en procentsats av inköpspriset: Inköpspris Skatt < 20000 kr 15% 20000 30000 kr 3000 kr > 30000 kr 10% Skriv en rutin som tilldelar skatten s rätt värde för givet i. Fråga 45. Förklara i ord hur variabeln s värde beror av tal int tal=356,s; s=tal/100+tal%100/10+tal%10; Fråga 46. Skriv ett logiskt uttryck, som är sant då de tre heltalsvariablerna a,b och c alla har samma värde. Fråga 47. Skriv en rutin som tilldelar variabeln mitten det tal som bildas av de två mittersta siffrorna i ett fyrsiffrigt tal lagrat i heltalsvariabeln tal; Om tal=1234 så blir mitten=23 Fråga 48. Vilket värde får a nedan? int a; a=6/2*3+7/3; Fråga 49. Vad är det som gör att detta program inte kan användas för att summera två tal? int main(void){ int a,b,c; printf("a : "); scanf("%d",a); printf("b : "); scanf("%d",b); c=a+b; printf("c = %f",c); Fråga 50. Bestäm heltalsvärden på a och b, så att c och d får värdena 3 respektive 5. a=? b=? c=a/b; d=a%b;

Håkan Strömberg KTH STH 1 Fråga 1. c = 3.0,e = 5.0,f = 6.67 Fråga 2. X%7==0 X%5==0; Fråga 3. Fråga 4. 4 och 7 a b 4 3 ETT 4 5 TVÅ 2 3 TRE 2 5 FYRA Fråga 5. KOEN==1 (KOEN==2 && ALDER<18) Fråga 6. T=T%1000/10; S=T/10+T%10; Fråga 7. 8 Fråga 8. c=(float)a/b; Fråga 9. if(n/10>6 && N%10<3) Fråga 10. antal_hus Fråga 11. X Z Fråga 12. A Fråga 13. 1 2 0.5 Fråga 14. year2002 if (x/10>x%10) Fråga 15. srand(time(0)); int eyes, sum=0; do { eyes=rand()%6+1; sum=sum+eyes; while(eyes>1); Fråga 16. Variablerna x och y byter värden med varandra Fråga 17. a!=b && a!=c && b!=c Fråga 18. s=(a+b+c)/3; t=sqrt(s*(s-a)*(s-b)*(s-c)); Fråga 19. a=3, b=3, c=3.0, d=3.7 Fråga 20. a=6 och b=6 Fråga 21. (A>2*B && A<=3*B) Fråga 22. tim>21 tim==21 && min>35 Fråga 23. printf("%d",(int)(100*x)%10) Fråga 24. 3, 13 och 17 Fråga 25. c1=2, c2=2.4 och c3=30 Fråga 26. (x>y && x<z) alternativt (x>z && x<y) Fråga 27. Fråga 28. 30 Fråga 29. 17 Fråga 30. x%100/10==x%10+x/100 (x<1 x>1000) Fråga 31. if(farg==1 && modell==1) pris=78.00; if(farg==1 && modell==2) pris=93.50; if(farg==2 && modell==1) pris=65.50; if(farg==2 && modell==2) pris=79.00; Fråga 32. a=56.79 b=56.7898 Fråga 33. b<=a Fråga 34. 8 Fråga 35. if(i%2==0 && i>=2 && i<=30) Fråga 36. printf("\"hej\", sa Lucia\n") Fråga 37. sum ska nollställas k ska deklareras scanf("%d",&n) scanf("%f",&tal) Fråga 38. kapefter=kapfore*(1+ranta/100.0); alternativt kapefter=kapfore*(1+(float)ranta/100); Fråga 39. a>b+3 a<=2 && b>=5 Fråga 40. i=i/100; m=i%10; Fråga 41. a, c och d Fråga 42. 1 och 36 Fråga 43. a= 6 och b= 6 Fråga 44. int i; float s; if(i<20000) s=0.15*i; if(i<=30000) s=3000; s=0.1*i;

Håkan Strömberg KTH STH 2 Fråga 45. s innehåller summan av de siffror som ingår i det tresiffriga talet tal. Fråga 46. a==b && b==c Fråga 47. Fråga 48. 11 Fråga 49. mitten=tal/10%100; Utelämnat & i de två scanf-satserna %d i stället för %f i printf-satsen Fråga 50. Till exempel a = 32 och b = 9. Annars får man alla lösningar genom godtyckligt värde på n 0 i a = 23+3n och b = 6+n.