Lösningsförslag till övningsuppgifter till föreläsning 6 Funktioner

Relevanta dokument
Lösningsförslag till övningsuppgifter till föreläsning 6 Funktioner

Funktioner. Jan Erik Moström,

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

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

Föreläsning 9. Repetition och exempelproblem

Loopar och datatyper. Föreläsning 3

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

Programmering i C, 7,5 hp

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

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,

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

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

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

Loopar och datatyper. Föreläsning 3

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

Exempelsamling Assemblerprogrammering

Funktioner och programstruktur. Föreläsning 5

Problemlösning. Veckodagsproblemet Gissa talet Siffersumman

Problemlösning. Veckodagsproblemet Gissa talet Siffersumman

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,

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,

Några småsaker. switch break, continue, goto Kommentarer

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

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

En kort text om programmering i C.

7 Programmeringsteknik

Variabler använder man sig av för att under programkörningen spara data eller information i primärminnet. En variabel har typ, namn och värde.

1 Modulär programutveckling.

Enkla uppgifter. Uppgift 1. Uppgift 2

Blandat. Föreläsning 5

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

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

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

Tentamen i Programmeringsmetodik, 5p, Au2, D1 och E1,

Lämna in en ifylld kursvärdering tillsammans med tentan! Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl

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

Programmeringsteknik för Ingenjörer VT06. Föreläsning 10

Föreläsning 3. Iteration. while-satsen for-satsen do-satsen

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

Tecken & Strängar. Kapitel 7

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;

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

Funktioner och programstruktur. Föreläsning 5

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

Kompilatorer och interpretatorer

Föreläsning 10. Pekare (Pointers)

OOP Objekt-orienterad programmering

Heltal(int) Programmeringsteknik 54

OOP Objekt-orienterad programmering

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler

Föreläsning 11. Arrayer. Arrayer. Arrayer. Lagrar flera värden av samma typ Kan vara primitiva typer eller objekt. Kan ha en array av t.

Pekare ( )

4 Sammansatta datatyper

Iteration. Föreläsning 3. TDA540 - Objektorienterad Programmering

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

2 Pekare och dynamiska variabler.

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

Objektorienterad Programmering (TDDC77)

7 Programmeringsteknik

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

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

OBS!! Detta är DEL 2 av tentan. För att få ut denna måste du ha lämnat in del 1. Om du inte fått ut del 1 bör du meddela skrivningsvakten. OBS!!

Klassdeklaration. Metoddeklaration. Parameteröverföring

Uttryck och villkor. Föreläsning 2

Data, typ, selektion, iteration

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

Instuderingsfrågor, del A

Lämna in ifylld kursvärdering tillsammans med tentamen! Lösningarna till tentamensuppgifterna sätts ut på kurssidan på nätet i dag kl 13.

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Föreläsning 3. Föreläsning 3. Iteration. while-satsen for-satsen do-satsen. while-satsen. do-satsen. Datatypen double

Funktionens deklaration

JAVAUTVECKLING LEKTION 8

Övning från förra gången: readword

Chapter 4: Writing Classes/ Att skriva egna klasser.

JAVAUTVECKLING LEKTION 3

3 Styrning av programflöde. Här exekveras satserna enligt först sats1 sedan sats2 och sist sats3.

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

Uttryck och villkor. Föreläsning 2

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:

Objektorienterad programmering

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 5 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Lite mer om Javas stöd för fält. Programmering. Exempel: vad är det största talet? hh.se/db2004. Fält samt Input/Output

4 Sammansatta datatyper

Programmering A. Johan Eliasson

Algoritmer och effektivitet. Föreläsning 5 Innehåll. Analys av algoritmer. Analys av algoritmer Tidskomplexitet. Algoritmer och effektivitet

Lösningsförslag: Instuderingsfrågor, del A

Tentamen ges för: Tentamensdatum: Tid:

Arrayer med primitiva datatyper

Arrays (indicerade variabler) Föreläsning 6

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

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

Introduktion C-programmering

Typkonvertering. Java versus C

Föreläsning 13. Rekursion

Grundläggande C-programmering del 2 Pekare och Arrayer. Ulf Assarsson

Grundläggande C-programmering del 2 Pekare och Arrayer. Ulf Assarsson

Lösningsförslag. Programmeringsmetodik, KV: Java och OOP. 17 januari 2004

SCB :-0. Uno Holmer, Chalmers, höger 2 Ex. Induktiv definition av lista. // Basfall

Malmö högskola 2012/2013 Teknik och samhälle

Repetition C-programmering

Transkript:

Sid 1 (13) till övningsuppgifter till föreläsning 6 Funktioner Övningsuppgift 6.1 int add(int n, int m); int number1 = 123; int number2 = 456; int result; result = add(number1, number2); printf("summan är %d\n", result); int add(int n, int m) { int result; result = n + m; return result;

Sid 2 (13) Övningsuppgift 6.2 double fadd(double n, double m); double number1 = 1.23; double number2 = 45.6; double result; result = fadd(number1, number2); printf("summan är %.3f\n", result); double fadd(double n, double m) { double result; result = n + m; return result;

Sid 3 (13) Övningsuppgift 6.3 int equal(int a, int b); int number1 = 123; int number2 = 456; int result; result = equal(number1, number2); if (result == 1) { printf("talen är lika"); printf("talen är inte lika"); int equal(int a, int b) { if (a == b) { return 1; alternativt int equal(int a, int b) { int result; if (a == b) { result = 1; result = 0; return result;

Sid 4 (13) Övningsuppgift 6.4 int equal(int a, int b); int unequal(int a, int b); int number1 = 123; int number2 = 456; int result; result = unequal(number1, number2); if (result == 0) { printf("talen är lika"); printf("talen är inte lika"); int equal(int a, int b) { if (a == b) { return 1; int unequal(int a, int b) { if (equal(a, b)) { return 1;

Sid 5 (13) Övningsuppgift 6.5 int readnumber(void); int number; number = readnumber(); printf("du skrev in talet %d\n", number); int readnumber(void) { int n; printf("mata in ett tal: "); scanf("%d", &n); return n;

Sid 6 (13) Övningsuppgift 6.6 float freadnumber(void); float number1, number2; number1 = freadnumber(); number2 = freadnumber(); printf("summan : %5.2f\n", number1 + number2); printf("skillnaden : %5.2f\n", number1 - number2); printf("produkten : %5.2f\n", number1 * number2); printf("kvoten : %5.2f\n", number1 / number2); float freadnumber(void) { float number; printf("mata in ett tal: "); scanf("%f", &number); return number;

Sid 7 (13) Övningsuppgift 6.7 int readnumber(void); int number1, number2; number1 = readnumber(); number2 = readnumber(); printf("summan : %d\n", number1 + number2); printf("skillnaden : %d\n", number1 - number2); printf("produkten : %d\n", number1 * number2); printf("kvoten : %d\n", number1 / number2); int readnumber(void) { int number; printf("mata in ett tal: "); scanf("%d", &number); return number;

Sid 8 (13) Övningsuppgift 6.8 int readnumber(void); int max(int number1, int number2); int max3(int number1, int number2, int number3); int number_1, number_2, number_3; int result; number_1 = readnumber(); number_2 = readnumber(); number_3 = readnumber(); result = max3(number_1, number_2, number_3); printf("det största talet är %d\n", result); int readnumber(void) { int number; printf("mata in ett tal: "); scanf("%d", &number); return number; int max(int number1, int number2) { if (number1 > number2) { return number1; return number2; int max3(int number1, int number2, int number3) { return (max(number1, max(number2, number3)));

Sid 9 (13) Övningsuppgift 6.9 double pyramidvolume(double base, double height) ; double base = 7.3; double height = 15.8; double volume; volume = pyramidvolume(base, height); printf("base: %.1f\n", base); printf("height %.1f\n", height); printf("pyramid volume: %.1f\n", volume); double pyramidvolume(double base, double height) { double result; result = (base * height) / 3; return result;

Sid 10 (13) Övningsuppgift 6.10 double averageofthree(int n1, int n2, int n3); int number1 = 7; int number2 = 11; int number3 = 8; double average; average = averageofthree(number1, number2, number3); printf("average of %d, %d and %d: %.1f\n", number1, number2, number3, average); double averageofthree(int n1, int n2, int n3) { double result; result = (n1 + n2 + n3) / 3.0; return result;

Sid 11 (13) Övningsuppgift 6.11 void printmenu(void); int readchoice(void); void checkchoice(int choice); double readtemperature(int choice); double calculatenewtemperature(int choice, double temp); void printresults(int choice, double temp, double newtemp); int choice; double temperature; double newtemperature; do { printmenu(); choice = readchoice(); checkchoice(choice); while (choice < 1 choice > 2); temperature = readtemperature(choice); newtemperature = calculatenewtemperature(choice, temperature); printresults(choice, temperature, newtemperature); void printmenu(void) { printf("1. Omvandla från F till C\n"); printf("2. Omvandla från C till f\n"); int readchoice(void) { int choice; printf("ditt val: "); scanf("%d", &choice); return choice;

Sid 12 (13) void checkchoice(int choice) { if (choice < 1 choice > 2) { printf("felaktigt val\n"); double readtemperature(int choice) { double temp; if (choice == 1) { printf("temperatur i Fahrenheit: "); printf("temperatur i Celsius: "); scanf("%lf", &temp); return temp; double calculatenewtemperature(int choice, double temp) { double newtemp; if (choice == 1) { newtemp = (temp - 32) / (9.0/5.0); newtemp = (9.0/5.0) * temp + 32; return newtemp; void printresults(int choice, double temp, double newtemp) { if (choice == 1) { printf("%.2f F är %.2f C\n", temp, newtemp); printf("%.2f C är %.2f F\n", temp, newtemp);

Sid 13 (13) Övningsuppgift 6.12 void printtext(void); double readnumber(void); double sum(double n1, double n2); double number1, number2, number3; double sum2, sum3; printtext(); number1 = readnumber(); number2 = readnumber(); number3 = readnumber(); sum2 = sum(number1, number2); sum3 = sum(sum(number1, number2), number3); printf("%f + %f = %f\n", number1, number2, sum2); printf("%f + %f + %f = %f\n", number1, number2, number3, sum3); void printtext(void) { printf("\nprogrammet läser in tre tal. "); printf("beräknar summan av de två första talen, \n"); printf("summan av de tre talen, samt skriver ut "); printf("resultaten.\n\n"); double readnumber(void) { double number; printf("skriv in tal: "); scanf("%lf", &number); return number; double sum(double n1, double n2) { return n1 + n2;