tentamensdags och lab 3

Relevanta dokument
KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012

HI1024 Programmering, grundkurs TEN

Föreläsning 3. Programmering, C och programmeringsmiljö

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

Föreläsning 3. Programmering, C och programmeringsmiljö

Datorlaboration 0, Programmering i C++ (EDA623)

TENTAMEN MOM1 GRUNDLÄGGANDE PROGRAMMERINGSTEKNIK OCH

Objektorientering i liten skala

HI1024 Programmering, grundkurs TEN

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

HI1024 Programmering, grundkurs TEN

Planering Programmering grundkurs HI1024 HT data

Att komma igång. Föreläsning 1

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

HI1024 Programmering, grundkurs TEN

Datorlaboration 0, Programmering i C++ (EDAF30)

Planering Programmering grundkurs HI1024 HT TIDAA

Att komma igång. Föreläsning 1

HI1024 Programmering, grundkurs TEN

Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf

TDIU Regler

Tentamen *:58/ID100V Programmering i C Exempel 3

TDP Regler

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

NetBeans 5.5. Avsikt. Projektfönster

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

Innehållsförteckning. Exempel. Åtkomst & användarhandledning

C++ Slumptalsfunktioner + switch-satsen

Programmeringsteknik med C och Matlab

TDIU01 - Programmering i C++, grundkurs

Hur man kompilerar och kör IT++-program med MinGW. 1 Sammanfattning. 2 Om dokumentet. 3 Om min konfiguration

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Nu till dagens ämne: Vi rekapitulerar det första problemet ur ProblemI:

NetBeans 7. Avsikt. Projektfönster

Programsystemkonstruktion med C++: Övning 1. Karl Palmskog september 2010

Uppgifter till praktiska tentan, del A. (7 / 27)

Operatorer Tilldelning Kodblock { } if satsen Logiska uttryck Att programmera

Hemtentamen. HI1024 Programmering, grundkurs, 8.0 hp, KTH STH, hösten 2012

Inledande programmering med C# (1DV402) Ditt första C#-program med Visual Studio

1 Modulär programutveckling.

Värmedistribution i plåt

Så här skriver du ditt första program i C++

Tentamen: Datordel Programmeringsteknik

Loopar och datatyper. Föreläsning 3

Introduktion till programmering, hösten 2011

Planering Programmering grundkurs HI1024 HT 2014

En kort text om programmering i C.

Problemlösning. Veckodagsproblemet Gissa talet Siffersumman

Enkla datatyper minne

AVR Studio 4 Och AVRFLASH

Lab1 Introduktion. 1 Syfte. 2 Innehåll Win32API Skapa trådar Kritiska sektioner Mailslothantering. 3 Förberedelse & Tips

TDP Regler

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

Inlämningsuppgift 1, Digsim

Code-Lite tutorial ( /RoJ)

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Laboration 1. En första bekantskap med C++ Namn: Godkänd den: Rest:

Det finns många flaggor till g++,

Introduktion C-programmering

PROGRAMMERING-Java TENTAMINA

Repetition C-programmering

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

Problemlösning. Veckodagsproblemet Gissa talet Siffersumman

Programmeringsuppgifter 1

L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I

Tentamen i Programmering grundkurs och Programmering C

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

Laboration 0. Enhetsbokstaven anges med ett kolon efter och man läser ofta ut detta, exempelvis C:(sekolon).

grundläggande C++, funktioner m.m.

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

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

prog: prog.c gcc -g -Wall prog.c /usr/local/bib/c/58an/modules/modul.o -o prog

Tentamen i. för D1 m fl, även distanskursen. lördag 28 maj 2011

Loopar och datatyper. Föreläsning 3

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

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

TDIU01 - Programmering i C++, grundkurs

TENTAMEN PROGRAMMERING I JAVA, 5P SOMMARUNIVERSITETET

public class Main extends MovieClip { var hillpage:hillpage; var ifpage:ifpage;

kl Tentaupplägg

Agenda. Objektorienterad programmering Föreläsning 13

#include <stdio.h> #include <string.h>

Funk%oner. Vad är det och hur definierar vi en Top- down- programmering lokala globala variabler void och flera inparametrar

TDIU Regler

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

Innehållsförteckning. 9 Större projekt Övningsuppgifter...32

HI1024 Programmering, grundkurs TEN

Abstrakta datastrukturer

Indicerade variabler

Komponenter med COM (och COM+/VC++ 7.0)

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

Dynamiskt minne. Vad är dynamiskt minne Motivering Hur gör man i C Övningar

Uttryck och villkor. Föreläsning 2

översiktskurs (5DV031)

Installationsanvisningar VisiWeb. Ansvarig: Visi Closetalk AB Version: 2.3 Datum: Mottagare: Visi Web kund

Funktioner. Jan Erik Moström,

Dagens föreläsning. Specialtecken. Mer om printf. Formateringssträngar. Mer om scanf. Programmeringsteknik för Ingenjörer VT05

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

Transkript:

tentamensdags och lab 3

Större program delas normalt upp i flera filer/moduler vilket har flera fördelar: Programmets logiska struktur när man klumpar ihop funktioner som hör ihop (och ibland också struct-def och variabler) Man kan enkelt återanvända generisk kod (tänk på biblioteken vi använder) Man behöver inte kompilera om hela programmet när man ändrar i en modul

#include <stdio.h> #include "matte.h" int main() { printf("arean:%.3f\n",cirkelarea(10)); return 0; } #ifndef MATTE_H_INCLUDED #define MATTE_H_INCLUDED double cirkelarea(double radie); #endif // MATTE_H_INCLUDED #include <math.h> #include "matte.h" double cirkelarea(double radie) { return M_PI*radie*radie; }

Börja med att starta ett projekt File -> New -> Project Console application Go C Next> namn Next> Finish Kompilera och kör!

Skapa sedan en till källkodsfil: File -> New -> File C/C++ source Go C Next> matte.c v v Debug Release Finish

och tillhörande headerfil: gör samma sak men välj C/C++ header och namnge den matte.h

gcc c main.c skapar objektsfilen main.o gcc c matte.c skapar objektsfilen matte.o gcc o cirkelprogram main.o matte.o länkar ihop objektsfilerna till ett körbart program OBS att headerfilen matte.h ligger i samma katalog!

Formalia och hur går det till på praktisk tentamen (TEN2) Träning inför praktisk tentamen Frågor inför teoretisk examen (TEN1) Frågor angående Lab 3

Tentamen är 4h och 45min i datorsal Ni får ett speciellt användarnamn och lösenord Ni sparar alla filer på H: - spara ofta! Internet är avstängt Ni får ha med er boken utan anteckningar och en A4 med handskrivna anteckningar på ena sidan De fyra följande uppgifterna skulle kunna utgöra en tentamen

1. Skriv ett program som omvandlar km/h till m/s. Användaren ska kunna göra så många omvandlingar denne vill och sedan kunna avsluta 2. Skriv en funktion som tar två strängar och returnerar hur många av bokstäverna i den första strängen som också finns i den andra strängen. Ex: comp("banan","arbete") ska returnera 3 eftersom b,a och a i banan finns i arbete comp("banan"," avlusa") ska returnera 2 eftersom a och a i banan finns i avlusa comp("rivas"," avlusa") ska returnera 3 eftersom v,a och s i rivas finns i avlusa Skriv också en main som testar funktionen. Exempel på main som testar funktionen: int main(void) { printf("antal: %d",comp("banan","arbete")); }

3. I det här programmet ska vi representera en rektangel med heltalssidor med en struct. Skriv en funktion som som tar två heltal (längd och bredd) och returnerar en rektangel. Skriv en funktion som tar en rektangel och returnerar arean som en int Skriv en funktion som ökar en rektangels längd och bredd med ett Skriv en funktion som tar två rektanglar och kontrollerar om längd och eller bredd är lika stora och i så fall returnerar den en ny rektangel som har formen av de två rektanglarna liggande bredvid varandra

4. Master Mind I det här spelet slumpar datorn fram 4 siffror (0-9) på fyra positioner. Spelaren skall sedan gissa vilka siffror datorn har slumpat fram. Efter gissningen berättar datorn hur många siffror som var rätt siffra på rätt plats och hur många siffror som var rätt siffra men på fel plats. Sedan får spelaren gissa igen och så fortsätter spelet tills spelaren gissat rätt varvid denne gratuleras av programmet. Datorn slumpar fram fyra unika siffror och spelaren förväntas gissa fyra unika siffror. Så här skulle en körning där datorn slumpat fram siffrorna 3 7 1 0 se ut: Valkommen. Gissa fyra siffror(0-9) med mellanslag mellan siffrorna: 0 2 6 3 Du har 0 siffror ratt pa ratt plats och 2 siffror ratt pa fel plats. Gissa igen: 2 7 4 0 Du har 2 siffror ratt pa ratt plats och 0 siffror ratt pa fel plats. Gissa igen: 2 3 1 0 Du har 2 siffror ratt pa ratt plats och 1 siffror ratt pa fel plats. Gissa igen: 3 7 1 0 Grattis du gissade ratt på 4 gissningar!

Skriv ett program som låter användaren spela ett kortparti 21 mot datorn. I ett 21-spel har kortfärgen ingen betydelse. Man får ett kort i taget och det gäller att komma så nära 21 som möjligt. Får användaren över 21 har denne förlorat. Om användaren är nöjd innan denne fått 21 spelar datorn och då vinner den som kommit närmast. Får användaren exakt 21 vinner denne direkt. I vår variant av spelet räknas essen alltid som 1 och vi bryr oss inte om vilka kort som gått utan man kan alltid få korten 1 tom 13 med samma sannolikhet (det är alltså teoretiskt möjligt att få 5 ess i rad).

Skriv ett program som låter en slumpa lotto-bollar med nummer 1-15. Användaren ska alltså få en slumpmässig siffra mellan 1 och 15 men aldrig samma siffra man tidigare fått: 12 For nasta boll tryck enter 7 For nasta boll tryck enter 4 For nasta boll tryck enter 5 For nasta boll tryck enter 9 For nasta boll tryck enter 2 For nasta boll tryck enter

Observera eventuella problem med textfiler om ni använder shared folder i linux i virtual box! Använd en annan folder och flytta säkerhetskopia till er shared folder ofta