2009-04-15, 21:13
  #1
Medlem
Flipkins avatar
Jag har fått en uppgift i Programmering A som driver mig till vansinne. Jag vet inte riktigt vart jag skall börja.

Sitter och läser i boken och blir bara mer förvirrad. Jag vill inte att någon löser hela uppgiften åt mig, men skulle uppskatta om någon kunde skriva början av det så jag kan komma igång lite. Kanske ger ett intryck av att vara en noob nu, men... ja det är jag.

Edit: Uppgiftsbeskrivningen :

Skriv ett program som läser in uppgifter om ett antal personer, och beräknar genomsnittsåldern för kvinnor respektive män i gruppen.
Följ följande Strukturdiagram (flödesschema)


http://www.hdimage.org/images/1uo3u84h3dgvr6fnt0ka_proguppgiftlektion4.jpg

Så ser uppgiften i fråga ut. All hjälp är välkommen, tack på förhand.
Citera
2009-04-15, 21:27
  #2
Medlem
kleskens avatar
Du ska göra t.ex. en while-loop som läser in uppgifter:

Först frågar efter man eller kvinna
Sedan ska den beroende på vad du har svarat addera 1 till antal man/kvinnor
Sedan matar du in åldern på mannen/kvinnan

Efter du har gjort det så frågar du om du vill läsa in fler uppgifter, om ja fortsätter while loopen om nej avslutar du den.

Efter det så adderar du männens åldrar och dividerar på hur många de är och gör sedan samma sak för kvinnorna

och skriver ut de.


Kan skriva nån specifik del med kod om du vill.
Citera
2009-04-15, 21:30
  #3
Medlem
Flipkins avatar
Citat:
Ursprungligen postat av klesken
Du ska göra t.ex. en while-loop som läser in uppgifter:

Först frågar efter man eller kvinna
Sedan ska den beroende på vad du har svarat addera 1 till antal man/kvinnor
Sedan matar du in åldern på mannen/kvinnan

Efter du har gjort det så frågar du om du vill läsa in fler uppgifter, om ja fortsätter while loopen om nej avslutar du den.

Efter det så adderar du männens åldrar och dividerar på hur många de är och gör sedan samma sak för kvinnorna

och skriver ut de.


Kan skriva nån specifik del med kod om du vill.

Att bara läsa det du skrev underlättade som fasen. Tack som fan. Jag ska ta och försöka knäcka denna nöt nu, återkommer med lite senare. Tack igen!
Citera
2009-04-15, 21:40
  #4
Medlem
Flipkins avatar
Edit dubbelpost
__________________
Senast redigerad av Flipkin 2009-04-15 kl. 22:04.
Citera
2009-04-16, 00:42
  #5
Medlem
Flipkins avatar
Har suttit och fifflat lite nu, dock inte kommit igång med While-satsen än.
Jag är hyffsat nybörjare på detta, så det lär se ganska konstigt ut. Hela programmet är ganska rörigt, men om man kompilerar det och kör det så märker man att jag är påväg i rätt riktning i alla fall (tror jag).

Skulle uppskatta ifall du kunde komma med nåra slingor kod som skulle kunna hjälpa mig färdigställa programmet! Tack på förhand!

Kod:
import javax.swing.*;
public class Genomsnitt {
  public static void main(String[] arg) {
     int knappNr = JOptionPane.showConfirmDialog(null, "Är du man eller kvinna?" + 
"\n" + "Tryck JA för Kvinna" + 
"\n" + "Tryck NEJ för Man");
     int k = 0;   
     int m = 0;

     if (knappNr == 0)
     k = k + 1;
   
     else
     m = m + 1;

  String Ålder = JOptionPane.showInputDialog("Hur gammal är du?");
     int summa = Integer.parseInt(Ålder);
        summa = summa/m;

      JOptionPane.showMessageDialog(null, "Genomsnittsåldern är: " + summa);
      
      System.exit(0);
   }
    
}
Citera
2009-04-16, 02:59
  #6
Medlem
gothxxs avatar
några saker...
  • tänk på att du ska ha två olika ålderssummor, en för män, en för kvinnor.
  • börja alltid variabler med liten bokstav och stor nästa om det är ett till ord (standard att göra så, t.ex summaÅlderKvinnor (Helst skall man undvika åäö också))
  • ja/nej är inte så snyggt, borde vara man/kvinna
  • lägg m & k utanför loopen sen så dem inte börjar om på noll efter varje varv, du vill ju att dem skall öka.
  • genomsnittet, summa/m skall du inte göra föräns det skrivs ut, så antingen ("Genomsnittsåldern är: " + summa/m) eller spara det i variabel innan, typ
  • genomsnitt = summa/m;
  • ("Genomsnittsåldern är: " + genomsnitt);
  • loopen skall alltså vara runt alla frågor så att säga, (använd do-while om du kan)

Lycka till!
Citera
2009-04-16, 11:48
  #7
Medlem
Flipkins avatar
Citat:
Ursprungligen postat av gothxx
några saker...
  • tänk på att du ska ha två olika ålderssummor, en för män, en för kvinnor.
  • börja alltid variabler med liten bokstav och stor nästa om det är ett till ord (standard att göra så, t.ex summaÅlderKvinnor (Helst skall man undvika åäö också))
  • ja/nej är inte så snyggt, borde vara man/kvinna
  • lägg m & k utanför loopen sen så dem inte börjar om på noll efter varje varv, du vill ju att dem skall öka.
  • genomsnittet, summa/m skall du inte göra föräns det skrivs ut, så antingen ("Genomsnittsåldern är: " + summa/m) eller spara det i variabel innan, typ
  • genomsnitt = summa/m;
  • ("Genomsnittsåldern är: " + genomsnitt);
  • loopen skall alltså vara runt alla frågor så att säga, (använd do-while om du kan)

Lycka till!

Tack för tipsen! Har inte riktigt lärt mig hur man namnger knapparna, så att det skulle bli Man / Kvinna ist för Ja / Nej. Ska fortsätta jobba på arbetet idag, tackar för alla råd.
Citera
2009-04-16, 16:52
  #8
Medlem
Flipkins avatar
Skulle någon kunna skriva deras lösning på denna uppgift? Skulle hjälpa väldigt mycket om jag kunde se texten i sin helhet, gärna med //kommentarer som förklarar olika element.

Väldigt tacksam för hjälpen hittills!
Citera
2009-04-16, 18:45
  #9
Medlem
ojns avatar
Så du kan lämna in någon annans lösning som din egen? Det här forumet är till för att hjälpa folk i rätt riktning genom att svara på konkreta frågor om Java, inte uppmuntra fusk.
Citera
2009-04-16, 18:54
  #10
Medlem
Flipkins avatar
Citat:
Ursprungligen postat av ojn
Så du kan lämna in någon annans lösning som din egen? Det här forumet är till för att hjälpa folk i rätt riktning genom att svara på konkreta frågor om Java, inte uppmuntra fusk.

Jag antar att det finns flera lösningar på denna uppgift, vill endast se hur det går att skrivas. En viktig del (iaf för mig) är att se hur saker är uppbygda för att kunna förstå hur dem fungerar.

Förstår vad du menar dock och om någon känner att dom skulle bidra till fusk så skall dom självklart avstå från att skriva någon som helst kod.
Citera
2009-04-16, 19:58
  #11
Medlem
Flipkins avatar
Blir en jävla massa posts av mig här nu.
Undrar om någon skulle kunna skriva början på while-satsen, för att ge mig en aning om hur det skall se ut? Efter det så bör jag inte ha några större problem med att färdigställa resten själv.
Citera
2009-04-16, 20:14
  #12
Medlem
Protons avatar
while(

Citera
  • 1
  • 2

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in