Just nu i M3-nätverket
Gå till innehåll

Göra ett program..


Molidor

Rekommendera Poster

Jag har en uppgift som för mig är omöjlig att lösa.. om jag inte får en ledtråd eller tips! Någon som kan hjälpa mig? Jag är nog lite smått trögfattad och tycker det är rätt svårt..

Länk till kommentar
Dela på andra webbplatser

  • Svars 51
  • Skapad
  • Senaste svar

Har du skrivit program förut där det förekommer inmatningar? I så fall kan du ju börja med den biten.

Länk till kommentar
Dela på andra webbplatser

Har du skrivit program förut där det förekommer inmatningar? I så fall kan du ju börja med den biten.

 

Japp... om det är "cin"? :-D

 

 

Det som är knepigast tror jag är biten att varje bil inte får överskrida en viss literförbrukning och att programmet ska varna (med text) om förbrukningen överstigits.

Länk till kommentar
Dela på andra webbplatser

mitt tips är enkelt. Inga detaljer om exakt hur du ska lösa det men tänk på varje del av programmet som en svart låda som har en atomär funktion.

 

Är det C++ du jobbar i?

Då kan vi börja med att säga att en bil ska vara ett objekt med vissa egenskaper givna i texten. (eller en enklare struktur fungera det med)

Objektet/strukturen ska kunna svara, och spara, uppgifter som hör ihop med en bil.

 

Sedan behöver du en klass/struktur som har hand om alla dina bilar.

 

och till sist några kodsnuttar som hanterar in- och utmatningar.

 

Svarta lådorna är dina olika strukturer/klasser. Du vet vad du ska ge dem, du vet vad som ska fås ut men själva funktionen däremellan kan du strunta i tills vidare. Bygg upp strukturen för programmet så blir programmeringen enkel.

Länk till kommentar
Dela på andra webbplatser

mitt tips är enkelt. Inga detaljer om exakt hur du ska lösa det men tänk på varje del av programmet som en svart låda som har en atomär funktion.

 

Är det C++ du jobbar i?

Då kan vi börja med att säga att en bil ska vara ett objekt med vissa egenskaper givna i texten. (eller en enklare struktur fungera det med)

Objektet/strukturen ska kunna svara, och spara, uppgifter som hör ihop med en bil.

 

Sedan behöver du en klass/struktur som har hand om alla dina bilar.

 

och till sist några kodsnuttar som hanterar in- och utmatningar.

 

Svarta lådorna är dina olika strukturer/klasser. Du vet vad du ska ge dem, du vet vad som ska fås ut men själva funktionen däremellan kan du strunta i tills vidare. Bygg upp strukturen för programmet så blir programmeringen enkel.

 

Nej några exakta detaljer vill jag inte ha :)

Japp C++.

 

Aha... bra svar, faktiskt! Men jag måste nog klura på det ett tag.. Tack!

Länk till kommentar
Dela på andra webbplatser

Har ni jobbat med klasser förut? Det beror ju lite på nivån på programmeringskursen.

Länk till kommentar
Dela på andra webbplatser

Har ni jobbat med klasser förut? Det beror ju lite på nivån på programmeringskursen.

 

Det låter inte så värst bekant.. vad är det? Jag läser en distanskurs, nybörjarkurs, på 2 veckor.

Länk till kommentar
Dela på andra webbplatser

Jag har en liten fråga förresten, kanske kan ställa den här..

När jag ska skriva av ett program från kursboken och ska göra "klamrarna" dvs. { och } så går det utmärkt att göra den första. Men när jag ska göra den andra } så är det helt omöjligt, det händer intenting. Jag måste öppna Anteckningar eller Word eller nåt, göra tecknte där och sen klippa och klistra. Vad gör jag för fel?!

Länk till kommentar
Dela på andra webbplatser

Då är det nog inte tänkt att ni ska använda klasser. Då tycker jag det verkar vara enklast att du börjar med inmatningar och utskrifter som du har gjort förut.

Länk till kommentar
Dela på andra webbplatser

Det låter inte så värst bekant.. vad är det? Jag läser en distanskurs, nybörjarkurs, på 2 veckor.

 

Alt Gr + 7

resp

Alt Gr + 0

 

Vilket program jobbar du i?

Kolla i programmets Verktyg / Inställningar. Antagligen är det ett kortkommando som är knytet till den tangentkombinationen.

Länk till kommentar
Dela på andra webbplatser

Alt Gr + 7

resp

Alt Gr + 0

 

Vilket program jobbar du i?

Kolla i programmets Verktyg / Inställningar. Antagligen är det ett kortkommando som är knytet till den tangentkombinationen.

Ah se där ja! Det funkade utmärkt att använda Alt Gr + 0 istället.

Microsoft Visual Studio

Länk till kommentar
Dela på andra webbplatser

Jag överdrev väl något i trådstarten.. OMÖJLIGT var det ju inte såklart, men jag kände mig lite stillastående och just då stod det verkligen helt still. Men nu har jag fått programmet att fungera så pass att det, ptja.. fungerar! :P Men det är några frågetecken kvar.

 

Förbrukningen ska räknas ut (med decimaler, då funkar inte "int" va?) och sedan redovisas längre ner. Om förbrukningen är högre än den bör vara så ska en text skrivas ut, eller om förbrukningen är normal så ska en annan text skrivas ut. Varje bil har förståss sin egen maxförbrukning.. Tips ?

Länk till kommentar
Dela på andra webbplatser

Tal som ska sparas med decimaler användare förslagsvis Float eller Double som typ men då du troligen bara ska hantera som minst centiliter per mil kan du använda Int med bas på centiliter om du så vill.

 

Varje bil har sina egenskaper. Nu minns jag inte nomenklaturen för C++ men i generisk C-kod skulle varje bil se ut något som

struct MyCar
{ 
	string sId;
	double dMaxFuel;
	...med flera
}

en enkelt struct duger. Om du nu vet vad en klass är kan du skapa en klass istället men en struct duger.

 

Du skapar sedan varje bil när programmet startas, läser in eller kanske kanske har du hårdkodat varje bil. Du ger då alla egenskaper till varje bil och sparar sedan dem i exempelvis en lista eller en array.

 

Med alla egenskaper för en bil givna, du kan ta fram egenskaperna för varje bil enskilt, är det en smal sak att kontrollera om förbrukningen varit för stor.

Länk till kommentar
Dela på andra webbplatser

Tal som ska sparas med decimaler användare förslagsvis Float eller Double som typ men då du troligen bara ska hantera som minst centiliter per mil kan du använda Int med bas på centiliter om du så vill.

 

Varje bil har sina egenskaper. Nu minns jag inte nomenklaturen för C++ men i generisk C-kod skulle varje bil se ut något som

struct MyCar
{ 
	string sId;
	double dMaxFuel;
	...med flera
}

en enkelt struct duger. Om du nu vet vad en klass är kan du skapa en klass istället men en struct duger.

 

Du skapar sedan varje bil när programmet startas, läser in eller kanske kanske har du hårdkodat varje bil. Du ger då alla egenskaper till varje bil och sparar sedan dem i exempelvis en lista eller en array.

 

Med alla egenskaper för en bil givna, du kan ta fram egenskaperna för varje bil enskilt, är det en smal sak att kontrollera om förbrukningen varit för stor.

 

Struct vet jag nog inte vad det är för nåt, hittar inget om det i registret i boken heller. Jag har också problem med att få decimaltal.. Den säger bara "0" när svaret borde vara t.ex "0,2".

Den verkar heller inte förstå att min gräns för Bil 1 är 1,0 och anser att en förbrukning på 2liter är normalt, när svaret egentlingen borde vara Onormalt.

 

Hela min kod är nog fel helt enkelt :)

Länk till kommentar
Dela på andra webbplatser

http://en.wikipedia.org/wiki/C%2B%2B_classes

 

det var väl C++?

C är iofs snarlikt i grunden, strukts bör vara lika. Structs är en fundamental grund i alla programmeringsspråk (nästan), ett sätt att skapa en objekt med vissa egenskaper.

 

Vilken nivå är denna kurs du går? Jag skulle tro att det bästa du skulle kunna göra är att skriva ned dina funderingar på ett papper, formulera dem, och sedan ta kontakt med antingen en kunnig kurskamrat eller din lärare för att då få en muntlig genomgång av dina tankar och misstag.

 

Hur ser dina beräkningar ut? Du gör inte misstaget att omvandla det du räknas i flyttal till int innan du presenterar de? Obestämd typkastning mellan typer kan ge oväntade avrundnings/trunkeringseffekter (generellt sett).

 

Hur skriver du dina beräkningar?

 

men som sagt, det är nog enklare/snabbare och mer lärorikt för dig om du tar ett snack med en som kan det som kan förklara lite mer i detalj för dig. Samt lägga sig på den nivå du är rent kunskapsmässigt.

Länk till kommentar
Dela på andra webbplatser

http://en.wikipedia.org/wiki/C%2B%2B_classes

 

det var väl C++?

C är iofs snarlikt i grunden, strukts bör vara lika. Structs är en fundamental grund i alla programmeringsspråk (nästan), ett sätt att skapa en objekt med vissa egenskaper.

 

Vilken nivå är denna kurs du går? Jag skulle tro att det bästa du skulle kunna göra är att skriva ned dina funderingar på ett papper, formulera dem, och sedan ta kontakt med antingen en kunnig kurskamrat eller din lärare för att då få en muntlig genomgång av dina tankar och misstag.

 

Hur ser dina beräkningar ut? Du gör inte misstaget att omvandla det du räknas i flyttal till int innan du presenterar de? Obestämd typkastning mellan typer kan ge oväntade avrundnings/trunkeringseffekter (generellt sett).

 

Hur skriver du dina beräkningar?

 

men som sagt, det är nog enklare/snabbare och mer lärorikt för dig om du tar ett snack med en som kan det som kan förklara lite mer i detalj för dig. Samt lägga sig på den nivå du är rent kunskapsmässigt.

 

Kursen är nybörjarnivå och väldigt basic. Jag har mailat min lärare men har inte fått något svar ännu och det brådskar eftersom uppgiften egentligen ska in idag (men jag har fått OK att labba lite i helgen också). Jag föredrar att ha allt på mailen så jag lätt kan gå tillbaka och kolla vad som sas, än att notera per telefon.

 

Ja just nu funkar inte mitt program alls, vettifan vad som har hänt. Väntar på svar där också, så jag kan inte göra ändringar i koden för att se skillnaden. Det har skapats en flik som heter "xlocnum" så ingenting funkar längre.

 

Beräkningar? Ptja, det enda jag har är ju förbrukningen som jag först angav som en int men jag har ändrat till en float.

 

int valdbil, kordamil, liter; 
float forbrukning;

 

Längre ner står

forbrukning = liter/kordamil;

 

Jag känner att jag är ute på liiite hal is eftersom jag inte vill riskera att fuska på nåt vis

Länk till kommentar
Dela på andra webbplatser

Det är ingen som kommer att presentera ett färdigt program för dig att skriva av utan du kommer bara att få ledtrådar så att du blir tvungen att lära dig själv. Därför har jag svårt att tro att det skulle betraktas som fusk att du frågar här, det borde inte vara annorlunda än när du frågar din lärare eller en kurskamrat.

 

Räcker det att liter alltid anges som heltal eller behöver det vara ett decimaltal också?

 

forbrukning = liter/kordamil;

Det är en division med två heltal. Vad tror du resultatet blir för något, ett heltal eller ett flyttal?

Länk till kommentar
Dela på andra webbplatser

Det är ingen som kommer att presentera ett färdigt program för dig att skriva av utan du kommer bara att få ledtrådar så att du blir tvungen att lära dig själv. Därför har jag svårt att tro att det skulle betraktas som fusk att du frågar här, det borde inte vara annorlunda än när du frågar din lärare eller en kurskamrat.

 

Räcker det att liter alltid anges som heltal eller behöver det vara ett decimaltal också?

 

forbrukning = liter/kordamil;

Det är en division med två heltal. Vad tror du resultatet blir för något, ett heltal eller ett flyttal?

 

Nej va bra :-) ville förtydliga att jag inte heller vill ha några färdiga lösningar! Varken på delar eller hela programmet.

 

Nej jag tror att både liter och miltal bara behöver anges som heltal. Men förbruknigen ska alltså anges i decimaltal.

Jag gissar att resultatet borde bli ett heltal i den divisionen. Måste jag göra liter och kordamil till float också? För förbrukningen har jag ju gjort till en float

Länk till kommentar
Dela på andra webbplatser

Jag kan fortfarnade inte göra nånting med programmet p.g.a den där j*vla "xlocnum"-fliken som skapats.. den genererar 142 fel. Var tusan kommer den fliken ifrån?! Jag har provat att klippa ut min kod och göra en ny fil men det hjälper inte.

Länk till kommentar
Dela på andra webbplatser

 

 

Beräkningar? Ptja, det enda jag har är ju förbrukningen som jag först angav som en int men jag har ändrat till en float.

 

int valdbil, kordamil, liter; 
float forbrukning;

 

Längre ner står

forbrukning = liter/kordamil;

Undrar om du inte behöver typa beräkningen till float för att det ska fungera. eller definiera om liter och kordamil till float de med.

 

Alternativa sätt att skriva det på kan vara (notera rostig c)

forbrukning = (liter*1.0)/kordamil

eller

forbrukning = (float)( liter/kordamil)

 

I programmering, om man har int, dvs heltal, och dividerar dessa med varandra blir resultatet en int.

Länk till kommentar
Dela på andra webbplatser

Undrar om du inte behöver typa beräkningen till float för att det ska fungera. eller definiera om liter och kordamil till float de med.

 

Alternativa sätt att skriva det på kan vara (notera rostig c)

forbrukning = (liter*1.0)/kordamil

eller

forbrukning = (float)( liter/kordamil)

 

I programmering, om man har int, dvs heltal, och dividerar dessa med varandra blir resultatet en int.

 

Jag har gjort om liter och kordamil till float nu. Trodde att float bara var decimaltal och inte kunde hantera heltal, men det var kanske fel?

Men jag kan som sagt inte testa programmet p.g.a den där xlocnum-fliken....

Länk till kommentar
Dela på andra webbplatser

Jag kan fortfarnade inte göra nånting med programmet p.g.a den där j*vla "xlocnum"-fliken som skapats.. den genererar 142 fel. Var tusan kommer den fliken ifrån?! Jag har provat att klippa ut min kod och göra en ny fil men det hjälper inte.

 

Vad för något? Vilken C-miljö programmerar du i (samt varför i helskotta har man C som första språk i en kurs? Finns bättre språk att ta sin första stapplande steg i.)

Länk till kommentar
Dela på andra webbplatser

Jag har gjort om liter och kordamil till float nu. Trodde att float bara var decimaltal och inte kunde hantera heltal, men det var kanske fel?

Men jag kan som sagt inte testa programmet p.g.a den där xlocnum-fliken....

 

Float kan hålla heltal men om man vill bara ha heltal är inte att rekommendera. Snabbare att beräkna, ger inte avrundningsfel och lite sådant. Bara att man måste ta hänsyn till vilken typ en variabel är för att kunna veta hur operationer man önskar kommer att utföras. En int kan man alltid typa om till en float utan dataförlust men en float till int kan ge förlust.

Länk till kommentar
Dela på andra webbplatser

Vad för något? Vilken C-miljö programmerar du i (samt varför i helskotta har man C som första språk i en kurs? Finns bättre språk att ta sin första stapplande steg i.)

 

Vi använder Microsoft Visual Studio. Min kod ligger i en flik och nu har en till flik skapats (hur? varför? lösning?) som heter "xlocnum" och som ger mig 142 felmeddelanden. Alltså går programmet inte att köra.

Kursen är nybörjarkurs och bara i C++, på distans och två veckor.

Länk till kommentar
Dela på andra webbplatser

Float kan hålla heltal men om man vill bara ha heltal är inte att rekommendera. Snabbare att beräkna, ger inte avrundningsfel och lite sådant. Bara att man måste ta hänsyn till vilken typ en variabel är för att kunna veta hur operationer man önskar kommer att utföras. En int kan man alltid typa om till en float utan dataförlust men en float till int kan ge förlust.

 

Hmm, vet inte om jag riktigt hängde med där. Men så jag borde börja med att deklarera liter och kordamil som en int men i uträknignen använda din

forbrukning = (float)( liter/kordamil)

?

Typas de tillfälligt om till en float då, eller vadå?

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...