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

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

Arrays (indicerade variabler) Föreläsning 6

Loopar och datatyper. Föreläsning 3

Programmering Grundkurs (HI1900) Teoridel

Arrays (indicerade variabler) Föreläsning 4

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

Indicerade variabler

Loopar och datatyper. Föreläsning 3

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;

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

Programmering i C, 7,5 hp

Switch, Array (fält) switch break, continue, goto (scary) Sammansatta tilldelningar Kommentarer Array Sortering

TAIU07 Matematiska beräkningar med Matlab

Enkla uppgifter. Uppgift 1. Uppgift 2

HI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN1 - Teoretisk tentamen Tid: Torsdagen den 20 oktober 2011,

översiktskurs (5DV031)

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

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

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

Agenda. Arrayer deklaration, åtkomst Makron Flerdimensionella arrayer Initiering Strängar Funktioner och arrayer. Övningar nu och då

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan

Belopp Belopp > procent

BMI = (vikt i kg) / (längd i m) 2. Lösningsförslag

Problemlösning (3/5) Lösningar

*Pekarvärden *Pekarvariabler & *

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl Tentamen i Programmering C, Fri, Kväll,

Funktioner och programstruktur. Föreläsning 5

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

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

Programmering, grundkurs, 8.0 hp HI1024, extra tentamen, TEN1, för TIDAA1. Fredagen den 11 mars 2011,

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

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

Föreläsning 6 pekare och pekare tillsammans med arrayer

Skriv i mån av plats dina lösningar direkt i tentamen. Skriv ditt kodnummer längst upp på varje blad.

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

TANA17 Matematiska beräkningar med Matlab

Problemlösning Lösningar

Funktioner och programstruktur. Föreläsning 5

Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Omtentamen i Programmering C, 5p, fristående, kväll,

Föreläsning 10. Pekare (Pointers)

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl Omtentamen i Programmering C, Fri, Kväll,

Föreläsning 9. Repetition och exempelproblem

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

Lösningar till uppgifterna sätts ut på kurssidan på nätet idag kl Omtentamen i Programmering C, 5p, A1, D1, E1, Fri, Pr1, Te/Ek1,

Datorteknik 2 (AVR 2)

4 Sammansatta datatyper

Moment 6.1, 6.2 Viktiga exempel Övningsuppgifter T6.1-T6.6

Matriser och vektorer i Matlab

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

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

Matriser och vektorer i Matlab

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

Lösningar till uppgifterna sätts ut på kurssidan och på WebCT (Gamla Tentor) i dag kl 19. Tentamen i Programmering C, 5p, Distans, övriga,

Föreläsning 5: Dynamisk programmering

Data, typ, selektion, iteration

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

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

Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl

Föreläsning 3-4 Innehåll

Problemlösning. Veckodagsproblemet Gissa talet Siffersumman

Indexerade variabler

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

En kort text om programmering i C.

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Föreläsning 8 SLUMPTAL, SIMULERING + INTRODUKTION TILL VEKTORER

Linjära ekvationssystem i Matlab

TANA17 Matematiska beräkningar med Matlab

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

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Uppgift 1 ( Betyg 3 uppgift )

Visual Basic, en snabbgenomgång

struct egendefinierad typ struct LECTURE_TYPE { char teacher[99]; float lengthinminutes; char type; /* L = lecture, E = exercise */ };

2 Pekare och dynamiska variabler.

Föreläsning 6: Introduktion av listor

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Föreläsning 9-10 Innehåll

Beräkningsvetenskap föreläsning 2

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna.

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

Problemlösning. Veckodagsproblemet Gissa talet Siffersumman

String [] argv. Dagens Agenda. Mer om arrayer. Mer om arrayer forts. String [] argv. argv är variabelnamnet. Arrayer och Strängar fortsättning

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska

2 februari 2016 Sida 1 / 23

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

Att använda pekare i. C-kod

2D1339 Programkonstruktion för F1, ht 2003

HI1024 Programmering, grundkurs TEN

Lösningsförslag till tentamen för TDA540 Objektorienterad Programmering

Operatorer Tilldelning Kodblock { } if satsen Logiska uttryck Att programmera

En sammansatt sats eller block är en sekvens av satser, sammanslagna till en enhet med hjälp av ett matchande par av klamrar, { }.

HI1024 Programmering, grundkurs TEN

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 13. Omtentamen i Programmering C, 5p, A1, D1, PA1, Fri,

TENTAMEN. Programmering Grundkurs (HI1900) Skrivtid 13:15-18:15. Fredagen 14 januari Tentamen består av 8 sidor

KOKBOKEN 1. Håkan Strömberg KTH STH

Föreläsning 7 Innehåll. Rekursion. Rekursiv problemlösning. Rekursiv problemlösning Mönster för rekursiv algoritm. Rekursion. Rekursivt tänkande:

Tentamen: Datordel Programmeringsteknik

7 Programmeringsteknik

Transkript:

Håkan Strömberg KTH STH 1 Fråga 1. Vilken är den största respektive minsta värde variabeln SUM kan erhålla genom följande rutin? srand(time(0)); for(k=1;k<=4;k++) v[k]=rand()%7+k; sum=0; for(k=1;k<=4;k++) sum=sum+v[k]; printf("%d\n",sum); Fråga 2. Två vektorer är deklarerade: int a[5]={2,3,4,1,0,b[5]={3,2,1,4,0. Vad skriver rutinen nedan ut? for(k=0;k<5;k++) printf("%d ",a[b[k]]); Fråga 3. A är en vektor deklarerad A[100], som fyllts med alla heltalen från 1 till 100, i en salig blandning. I variabeln TALET, finns lagrat ett värde vars plats i vektorn man är intresserad av. Hur ska den punktade satsen skrivas för att detta ska fungera? n=-1; do{ while... printf("talet finns på plats %d",n); Fråga 4. Programmet nedan är tänkt att fungera så att det skriver ut alla tal i arrayen a. Programmet innehåller dock fel. Korrigera programmet! #include <stdio.h> void main(void){ int i; int a[10]={1,-1,2,-2,3,-3,4,-4,5,-5; for(i=1;i<=10;i++); printf("%d ",a[i]); Fråga 5. Arrayen v[100] är fylld med heltal. Skriv en rutin som avgör om talet 345 finns i arrayen eller ej. Rutinen skall skriva ut JA eller NEJ på skärmen. Fråga 6. Skriv en rutin (for-loop) som fyller arrayen a, deklarerad int a[20] med talen 15,20,25,30,...105,110 Fråga 7. Tre arrayer är deklarerade: int a[5]={2,3,4,0,1; int b[5]={1,4,2,0,3; int c[5]={4,0,3,2,1; Vad skriver rutinen nedan ut? Fråga 8. Skriv en rutin (i form av en loop) som flyttar alla värden i vektorn v ett steg åt höger och värdet i sista cellen till första cellen. v är deklarerad int v[100]. Exempelvis v = [12,16,28,30...56,78] ska övergå till v = [78, 12, 16, 28...91, 56]. Fråga 9. En indicerad variabel v, som deklarerats int v[7]; fylls med positiva heltal, som till exempel: 14 32 51 19 23 41 25 Man vill nu genom en rutin bestämma den största summa, som kan erhållas genom att summera två intilliggande element i v. För exemplet blir denna summa 83. Fullborda satserna nedan så att önskat resultat erhålles. max=0; for(i=...;...;i++) if(...>max) max=...; Fråga 10. En array int v[10] har tilldelats 10 värden. man önskar nu en rutin som ersätter värdet hos ett element med summan av de två efterföljande elementen, så långt det nu går. Till exempel v, med innehållet 1,2,3,4,5,6,7,8,9,10 får då efter rutinen det nya innehållet 5,7,9,11,13,15,17,19,9,10 Fråga 11. Vilken utskrift ger följande rutin? int v[10]={1,2,3,4,5,6,7,8,9,10; for(i=0;i<10;i++) v[v[i]]=v[i]; for(i=0;i<10;i++) printf("%d ",v[i]); Fråga 12. Varför fungerar inte den här rutinen som den ska? int i,v[10]; for(i=1;i<=10;i++) v[i]=i; Fråga 13. Skriv en loop som fyller arrayen int v[100] med talen 1,2,4,7,11,16,22,...,4754,4852,4951 Fråga 14. En matris har deklarerats int a[10][20], och fyllts med tal. Skriv en rutin som tar reda på hur många av dessa som har värdet 1. Fråga 15. I arrayen deklarerad int v[5] finns till exempel [23,12,25,31,34]. Skriv en rutin som skriver ut 11 13 6 3 det vill säga den icke negativa skillnaden mellan intilliggande tal i v. printf("%d ",a[b[c[i]]]);

Håkan Strömberg KTH STH 2 Fråga 16. Vad skriver rutinen ut? int v[5]={1,3,2,0,2; v[v[i]]++; printf("%d ",v[i]); Fråga 17. 2 2 2 2 2 2 1 1 1 2 2 1 1 1 2 2 2 2 2 2 I tabellen ovan ser vi innehållet av en matris deklarerad int m[4][5];. Skriv en rutin som på liknade sätt fyller en matris, deklarerad int n[8][7];. Det vill säga en ram med 2:or och för övrigt 1:or Fråga 18. En indicerad variabel, deklarerad int a[999], vill man ge innehållet 1 2 3 1 2 3... 1 2 3 Fyll i de ofullständiga satserna nedan, två for-satser och en tilldelningssats, så att resultatet erhålles. void main(void){ int a[999],k,m; for(k=???) for(m=???)??? Fråga 19. Vilket värde får c i denna rutin? int a[4]={3,1,0,2; int b[4]={1,3,0,2; c=a[b[2]]+b[a[1]]; Fråga 20. En vektor a, deklarerad int a[10] har redan tilldelats värden. Skriv en rutin som flyttar varje tal ett steg framåt, mot högre index. Talet i position 9 återkommer dock i position 0. Exempel a=[1 3 5 4 2 3 6 4 3 2] övergår i a=[2 1 3 5 4 2 3 6 4 3]. Rutinen ska bestå av en loop. Fråga 21. Matrisen int a[4][4] ska skrivas ut och ges en layout som nedan. Skriv en rutin bestående av en dubbelloop som sköter jobbet. 3451 789 60 1 32 1 491 99 295 4561 4711 161 1 92 123 233 Alla matrisens tal ligger i intervallet 0...9999 Fråga 22. Vad händer i den här rutinen? int a[10],i=0,j=0; while(i<10) a[i++]=j++; Fråga 23. Man önskar en rutin som saxar samman talen i två arrayer a och b till arrayen c. Till exempel om a=[1,2,3,4,5] och b=[10,20,30,40,50] så ska c=[1,10,2,20,3,30,4,40,5,50]. Skriv rutinen. Deklarationerna nedan gäller: int a[5],b[5],c[10],i; Fråga 24. Givet en array int s[1000] fylld med heltal. Man är nu intresserad att få reda på var i arrayen det finns en följd av tre tal som alla är 9. Rutinen ska skriva ut i vilket index denna följd börjar. Vi kan anta att det alltid finns exakt en. Skriv rutinen. Fråga 25. Man vill att matrisen int m[5][5] ska få följande utseende: 1 1 1 1 1 1 1 1 1 1 Fullborda if-satsen nedan så att detta resultat erhålles: for(j=0;j<5;j++) if(?) m[i][j]=1; m[i][j]=0; Fråga 26. Programmet nedan är tänkt att fungera så att det skriver ut alla tal i arrayen a. Programmet innehåller dock ett fel. Korrigera det! #include <stdio.h> void main(void){ int i; int a[10]={1,-1,2,2,3,-3,4,4,5,-5; for(i=1;i<=10;i++) printf("%d ",a[i]);

Håkan Strömberg KTH STH 3 Fråga 27. Nedan finns tre arrayer som alla har fyllts med tal. Skriv en rutin som bestämmer antalet tillfällen då summan av ett tal i a och talet på motsvarande plats i b är större än talet på motsvarande plats i s. Resultatet ska lagras i n. int a[100],b[100],s[100],n=0;... Fråga 28. Deklarera en array och fyll den, via en rutin, med talen 1,2,3...98,99,100,99,98...3,2,1 Fråga 29. Vilket värde har s efter rutinen nedan. int a[6]={0,2,1,1,0,2; int b[3]={4,5,3,i,s=0; for(i=0;i<6;i++) s=s+b[a[i]]; Fråga 30. Arrayen int a[99] innehåller alla heltal mellan 1 och 100, utom ett. Skriv rutin som tar reda på och skriver vilket. Fråga 31. Vilket värde har s efter följande rutin? int a[3][3]={{1,2,3,{4,5,6,{7,8,9; int i,j,s=0; for(i=0;i<3;i=i+2) for(j=0;j<3;j=j+2) s=s+a[i][j]; Fråga 32. Två arrayer deklarerade int a[101],b[101], är fyllda med tal. Skriv en rutin som bestämmer och tilldelar variabeln n, antalet lika par. I det mindre exemplet, där a={1,3,4,5,6,7,6,5,5 och b={3,3,5,4,5,6,5,5,4 får n värdet 2 efter som 2:a och 8:e paret är lika. Fråga 33. Vilket värde får variabeln s efter följande rutin? int a[4]={1,2,3,4; int b[4]={0,3,0,1; int c[4]={3,2,0,2; int i,s=0; for(i=0;i<4;i++) s=s+a[b[c[i]]]; Fråga 34. Innehållet i arrayen b, ska rad för rad kopieras till en följd i a. Vad ska det stå på punkternas plats? Fråga 35. Beskriv i ord vad programmet utför. int main(void){ int *a; int n[13],k,m,t; for(k=2;k<=12;k++) n[k]=0; srand(time(0)); for(k=1;k<=300;k++) { t=rand()%6+1+rand()%6+1; n[t]++; for(k=2;k<=12;k++) { printf("%2d ",k); for(m=1;m<=n[k];m++) printf("*"); printf("\n"); Fråga 36. Skriv en rutin som summerar alla udda heltal i arrayen, deklarerad int a[100];, i variablen sum. Fråga 37. Deklarera en kvadratisk heltalsmatris m med totalt 64 element. Skriv sedan en rutin som tilldelar elementen i diagonalen från övre vänstra hörnet till nedre högra talet 1. Fråga 38. Variabeln int t; har tilldelats ett tal. Vad innehåller a efter denna rutin? int a[10]={0; while(t>0){ a[t%10]++; t=t/10; Uttryck svaret i ord. Fråga 39. Mitt i ett program hittar vi följande kod. Inte speciellt smart skriven eller hur? Visa hur man klarar av detta med en loop.... a[0]=10; a[1]=15; a[2]=20; a[3]=25; a[4]=30; a[5]=35;... int b[3][4]; int a[12],i,j; for(i=0;i<3;i++) for(j=0;j<4;j++) a[...]=b[i][j];

Håkan Strömberg KTH STH 4 Fråga 40. Man önskar sortera arrayen a i fallande ordning i rutinen nedan. Fyll i start och stopp-värden för loop-variablerna i och j, så att sorteringen fungerar. int a[5]={7,3,2,4,1; for(i=...;i<...;i++) for(j=...;j<...;j++) if(a[i]<a[j]){ tmp=a[i]; a[i]=a[j]; a[j]=tmp; Fråga 41. Givet: int a[5]={1,4,3,0,2; int b[5]={0,2,4,1,3; För vilket värde på i är uttrycket a[b[i]]==b[a[i]] sant? Fråga 42. Arrayen a är fylld med 1000 heltal. Nu vill man ta reda på om dessa är sorterade i stigande ordning. Fullfölj rutinen nedan, genom att fylla i punkterna, så att ok får värdet 1 om så är fallet och annars värdet 0. int a[1000]; ok=...; for(i=0;i<...;i++) ok=...; Om till exempel talet 43 följs direkt av talet 43 i a anses inte sorteringsordningen bruten. Fråga 43. Information om 6 personer finns lagrade i hb och fb. En 1:a i hb betyder att personen i fråga spelar handboll, en 0:a att han inte gör det. På samma sätt får vi veta om personen spelar fotboll genom fb. Fyll i villkoret nedan, så att numren, 0...5, skrivs ut för de som ägnar sig åt precis en av aktiviteterna. int hb[6]={1,0,1,1,1,0; int fb[6]={0,0,1,0,1,1; int i; for(i=0;i<6;i++) printf("%d ",i); Fråga 44. int m[12]={31,28,31,30,31,30, 31,31,30,31,30,31; int dag,manad; För ett korrekt datum är månadens nummer 1...12 och dagens nummer 1...n. Där n framgår av koden ovan. Skriv ett villkor som är sant då dag och manad bildar ett korrekt datum. Fråga 45. Vilket värde erhåller c i rutinen nedan? int a[4]={2,5,3,1; int b[4]={1,2,3,0,c; c=a[b[a[0]]]+a[b[1]+b[0]]+a[b[2]-2]; Fråga 46. I arrayen, deklarerad int a[100];, är fylld med heltal. Nu önskar man en rutin som tar reda på hur många dkvenser bestående av tre 1:or det finns i arrayen. Fyll i det som saknas. int i,n=0; for(i=0;i<=...;i++) För denna mindre array a=[1,0,1,1,1,1,0,2,1,1,1] är antalet 3. Fråga 47. Beskriv med ord vad som sker i denna rutin int a[100],i,sum=0; for(i=0;i<100 && a[i]!=0;i++) sum=sum+a[i]; Fråga 48. Ett normalt år har 365 dagar. 1 januari har dagnummer 1 och 31 december dagnummer 365. Fyll i rutinen nedan så att dagnumret n bestäms för dag och manad, som tidigare i programmet fått korrekta värden. int m[12]={31,28,31,30,31,30, 31,31,30,31,30,31; int i,n=0,dag,manad; for(i=0;i<...;i++) n=...; n=...; Fråga 49. Arrayen int a[100] ska ges innehållet enligt andra raden i tabellen nedan. Den första raden anger index. 0 1 2 3 4 5... 94 95 96 97 98 99 1 100 3 98 5 96... 95 6 97 4 99 2 Fullfölj rutinen nedan genom att fylla i de punktade raderna a[i]=...; a[i]=...;

Håkan Strömberg KTH STH 5 Fråga 50. Man vill, med hjälp av rutinen nedan, tilldela matrisen m följande innehåll: 0 1 0 1 0 0 0 1 0 0 0 1 0 1 0 Skriv villkoret som ska stå på frågetecknets plats int i,j,m[5][5]; for(j=0;j<5;j++) if(?) m[i][j]=1; m[i][j]=0;

Håkan Strömberg KTH STH 1 Fråga 1. max= 34, min= 10 Fråga 2. 1 4 3 0 2 Fråga 3. (A[n]!=TALET); Fråga 4. Skriv om for-satsen som for(int i=0;i<=9;i++) Fråga 5. int i=0,found=0; do{ if(v[i]==345){ found=1; printf("ja\n"); i++; while (found==0 && i<100); if (found==false) printf("nej\n"); Fråga 6. for(i=0;i<20;i++) a[i]=15+5*i; Fråga 7. 0 3 2 4 1 Fråga 8. b=v[99]; for(i=99;i>0;i--) v[i]=v[i-1]; v[0]=b; Fråga 9. max=0; for(i=1;i<7;i++) if(v[i-1]+v[i]>max) max=v[i-1]+v[i]; Fråga 10. for(i=0;i<8;i++){ v[i]=v[i+1]+v[i+2]; printf("%d ",v[i]); Fråga 11. 1 1 3 3 5 5 7 7 9 9 Fråga 12. for(i=0;i<=9;i++) fungerar bättre. Fråga 13. v[0]=1; d=0; for(i=1;i<=99;i++){ d++; v[i]=v[i-1]+d; Fråga 14. n=0; for(i=0;i<10;i++) for(j=0;j<20;j++) if(a[i][j]==0) Fråga 15. for(i=0;i<=3;i++) printf("%d ",abs(v[i]-v[i+1])); Fråga 16. 2 4 3 1 3 Fråga 17. for(i=0;i<8;i++){ for(j=0;j<7;j++) if(i==0 i==7 j==0 j==6) m[i][j]=2; m[i][j]=1; Fråga 18. int a[999],k,m; for(k=0;k<=996;k=k+3) for(m=0;m<=2;m++) a[k+m]=m+1; Fråga 19. 6 Fråga 20. int a[10]={1,3,5,4,2,3,6,4,3,2; tmp=a[9]; for(i=9;i>0;i--) a[i]=a[i-1]; a[0]=tmp; Fråga 21. for(i=0;i<4;i++){ for(j=0;j<4;j++) printf("%5d",m[i][j]); printf("\n"); Fråga 22. Vektorn a, tilldelas talen 0... 9, a[0]=0 till a[9]=9 Fråga 23. { c[2*i]=a[i]; c[2*i+1]=b[i]; Fråga 24. for(i=0;i<998;i++) if(a[i]==9 && a[i+1]==9 && a[i+2]==9) printf("börjar i index %d\n",i); Fråga 25. if(i==0 i==4 j==0 j==4) Fråga 26. Index i arrayen a går mellan 0... 9 och inte mellan 1...10, som for-satsen antyder. Fråga 27. int a[100],b[100],s[100],n=0; if(a[i]+b[i]>s[i])

Håkan Strömberg KTH STH 2 Fråga 28. int a[199],i; { a[i]=i+1; a[198-i]=i+1; Fråga 29. 24 Fråga 30. int a[99]; int b[101],i; for(i=1;i<=100;i++) b[i]=0; for(i=0;i<99;i++) b[a[i]]=1; for(i=1;i<=100;i++) if(b[i]==0) printf("%d",i); Fråga 31. 20 Fråga 32. for(i=0;i<=100;i++) if(a[i]==b[i]) Fråga 33. 5 Fråga 34. i*4+j Fråga 35. Programmet kastar 300 gånger två tärningar och summerar antalet ögon. Frekvensen för olika utfall noteras i arrayen n. Den andra delen av programmet skriver ut ett liggande stapeldiagram över dessa frekvenser. Fråga 36. sum=0; if(a[i]%2==1) sum+=a[i]; Fråga 37. int m[8][8]; for(i=0;i<8;i++) m[i][i]=1; Fråga 38. a[i] talar om hur många gånger siffran i finns i talet t. Fråga 39. for(i=0;i<6;i++) a[i]=10+i*5; Fråga 40. for(i=0;i<4;i++) for(j=i+1;j<5;j++) i < 5 är också möjligt. Fråga 41. 1 Fråga 42. int a[1000]; ok=1; for(i=0;i<999;i++) if(a[i]>a[i+1]) ok=0; Fråga 43. hb[i]+fb[i]==1 Fråga 44. manad>=1 && manad<=12 && dag>=1 && dag<=m[manad-1] Fråga 45. 7 Fråga 46. for(i=0;i<=97;i++) if(a[i] && a[i+1] && a[i+2]) Fråga 47. Rutinen summerar antingen alla 100 talen i arrayen a, eller fram tills talet 0 påträffas. Fråga 48. for(i=0;i<manad-1;i++) n=n+m[i]; n=n+dag; Fråga 49. if(i%2==0) a[i]=i+1; a[i]=101-i; Fråga 50. i==j i+j==4