Gå til innhold

ahdrage

Medlemmer
  • Innlegg

    1 124
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av ahdrage

  1. Se vedlegg for problemet.

     

    Så langt har jeg komt, men her støter jeg på problemet.

    Siden det er en rasjonal ulikhet kan jeg ikke multiplisere på begge sidene med fellesnevner. Fordi det kan både være positivt og negativt.

    Har også prøvd å flytte over hele utrykker slik at høgre siden er 0, men får feil svar da.

     

    Noen som har et hint?

    post-5059-1188665607_thumb.jpg

  2. Har Windows Vista, driverene er akkurat lastet ned fra intel sine hjemmesider, og ser ut til å fungere som de skal.

    Men jeg får ikke skrudd på de trådløse nettverket, der er en knapp på pcen men det skjer ingenting når jeg trykker på den.

    Det er heller ikke mulig å skru det på noen plass i Windows.

     

    Noen som vet?

     

     

    edit: fikk laster ned Launch Manager og da funket det

  3. Driver med et program som skal bestemmer om en person er over kreditt grensa si.

    Her er koda

    // this program determines whether a person has exceeded their credit limit or not
    // by 
    
    #include <iostream>
    using std::cout;
    using std::cin;
    using std::endl;
    using std::fixed;
    
    #include <iomanip>
    using std::setprecision;
    
    int main()
    {
       int accountNumber;
       double beginningBalance;
       double totalCharges;
       double totalCredits;
       double creditLimit;
       double newBalance;
       
       cout << "Enter account number (-1 to end): ";
       cin >> accountNumber;
       
       while ( accountNumber != -1 ){
             cout << "Enter beginning balance: ";
             cin >> beginningBalance;
             
             cout << "Enter total charges: ";
             cin >> totalCharges;
             
             cout << "Enter total credits: ";
             cin >> totalCredits;
             
             cout << "Enter credit limit: ";
             cin >> creditLimit;
       
       newBalance = beginningBalance + totalCredits;
    
       
       if ( newBalance > creditLimit ) { 
          cout << "Account:      " << accountNumber << endl;
          cout << "Credit limit: " << creditLimit << endl;
          cout << "Balance:      " << newBalance << endl;
          cout << "Credit limit exceeded" << endl;
        
        cout << "\nEnter account number (-1 to end) : ";
           cin >> accountNumber;
        
    } 
      
       else 
           cout << "\nEnter account number (-1 to end) : ";
           cin >> accountNumber;
            
        
        
    }
            
    
          system("pause");
          return 0; 
          }
    
    

     

    Problemet mitt er:

          if ( newBalance > creditLimit ) { 
          cout << "Account:      " << accountNumber << endl;
          cout << "Credit limit: " << creditLimit << endl;
          cout << "Balance:      " << newBalance << endl;
          cout << "Credit limit exceeded" << endl;
        
        cout << "\nEnter account number (-1 to end) : ";
           cin >> accountNumber;
        
    } 
      
       else 
           cout << "\nEnter account number (-1 to end) : ";
           cin >> accountNumber;
    

     

    Programmet starter slik det skal igjen når personen ikke går over kredittgrensa.

    Men når personen går over kredittgrensa får eg berre "Enter account number" også stopper programmet.

    Kan tenke meg at problemet er at programmet ikkje går tilbake til while loopen etter at kreditten er overstiget. Men veit ikkje korsen eg skal få programmet tilbake til while loopen. Kan tenke meg noke sånt som "goto", men det skal vel ikkje være nødvendig å bruke?

     

    edit: la til blokk rundt else og da funka programmet.

  4. Hmm. Nytt problem nå.

    Programmet virker fint første gang jeg køyrer det.

    Andre gangen stopper programmet når den skal regne ut average.

    Må starte maskinen på nytt for at programmet skal funke igjen.

     

    edit: etter å forandret "totalmilesgallons" til "totalMilesGallons" og "milesgallon til "milesGallon" funker programmet fint.

    Skulle denne forandringen ha noe å si på hvordan programmet funker?

  5. Fant etterhvert ut problemet. Tror jeg må lære meg litt tålmodighet til debugging.

    Problemet var

     

    cout << "Enter gallons used (-1 to end): ";        // prompt user to enter gallons used

        cin >> gallon;                                    // stores gallon in memory

       

        cout << "Enter miles driven: ";                    // prompt the user to enter driven miles

        cin >> miles;                                      // stores miles in memory

     

    Når jeg trykte -1 for å avslutte spurte den først "miles driven" før den avslutta

     

    Løysninga var å ta "miles driven" inn i while setninga.

     

    Static cast må vel vere der for å bruke desimal tall? Eller har jeg misforstått?

     

     

    Programmet vart slik etter korreksjon:

     

    #include <iostream>

     

    using std::cout;

    using std::cin;

    using std::endl;

    using std::fixed;

     

    #include <iomanip>

     

    using std::setprecision;

     

    int main()

    {

        int gallonCounter = 0;

        double average;

        double totalGallons;

        double gallons;

        double miles;

        double milesgallon;

        double totalmilesgallons;

       

        cout << "Enter the gallons used (-1 to end): ";

        cin >> gallons;

       

        while ( gallons != -1 ) {

        totalGallons = totalGallons + gallons;

        gallonCounter = gallonCounter + 1;

       

        cout << "How many miles driven on the current tank? ";

        cin >> miles;

       

       

       

        milesgallon = static_cast< double >( miles ) / gallons;

        cout << "The miles/gallon for this tank was " << setprecision(6)

            << fixed << milesgallon << endl;

       

        totalmilesgallons = totalmilesgallons + milesgallon;

       

        cout << "Enter the gallons used (-1 to end): ";

        cin >> gallons;

           

            }        // end function while

       

        if ( gallons == -1 ) {

        average = static_cast< double >( totalmilesgallons ) / gallonCounter;   

        cout << "The overall average miles/gallon was " << setprecision(6)

            <<  fixed << average << endl;

            }

       

       

       

       

        system("pause");

        return 0;

       

    }  // end function main

  6. Problem med sentinel-controlled repetition:

    Skal skrive et program som lar brukeren sjå hvor mye bensin han bruker per miles i gallons.

     

    Problemet er at sentinel verdien ikkje avslutter kalkuleringa slik den skal.

    Slik skreiv eg programmet:

     

    // a program that calculates how many gallons you use per mile

    // by Alf-Henning Drage

     

    #include <iostream>

     

    using std::cout;

    using std::cin;

    using std::endl;

    using std::fixed;

     

    #include <iomanip>        // parameterized stream manipulators

     

    using std::setprecision;  // sets numeric output precision

     

    int main()      // function main and program execution

    {

        int total = 0;              // sum of gallon

        int gallonCounter = 0;      // number of times the user entered miles/gallon

       

        double gallon;              // the gallon value               

        double miles;                // how many miles the user enters

        double milesgallon;          // calculate miles per gallon

        double average;              // average use of gallon of all values entered

       

        // processing phase

       

        cout << "Enter gallons used (-1 to end): ";        // prompt user to enter gallons used

        cin >> gallon;                                    // stores gallon in memory

       

        cout << "Enter miles driven: ";                    // prompt the user to enter driven miles

        cin >> miles;                                      // stores miles in memory

     

        milesgallon = static_cast< double >( miles ) / gallon ;

        cout << "The miles/gallon for this tank was: " << setprecision(6)

            << fixed << milesgallon << endl;

       

        while ( gallon != -1 ) {

              total = total + gallon;                      // add gallon to total

              gallonCounter = gallonCounter + 1;          // increment counter

       

        cout << "Enter gallons used (-1 to end): ";        // prompt user to enter gallons used

        cin >> gallon;                                    // stores gallon in memory

       

        cout << "Enter miles driven: ";                    // prompt the user to enter driven miles

        cin >> miles;                                      // stores miles in memory

     

        milesgallon = static_cast< double >( miles ) / gallon ;

        cout << "The miles/gallon for this tank was: " << setprecision(6)

            << fixed << milesgallon << endl;

    }

       

        // termination phase

        // if user enered at least 1 mile or gallon

        if ( gallonCounter != 0 ) {

           

            //calculate average of miles per gallon used

            average = static_cast< double >( total ) / gallonCounter;

           

            // display average with 6 digits of precision

            cout << "The overall miles/gallon was: " << setprecision( 6 )

                  << fixed << average << endl;

                 

                  }  // end if part of if/else

     

        else // if no grades were entered, output appropriate message

          cout << "No grades were entered" << endl;

             

       

        system("pause");              // stops program from shut down when started

       

        return 0;                    // indicate sucessful termination

    }  // end function main

  7. Skjønte ikke helt hvorfor jeg skulle bruke modulus.

    Men jeg skrev den slik

     

    cout << "Enter five numbers: ";

        cin  >> integer1 >> integer2 >> integer3 >> integer4 >> integer5;

       

        if ( integer1 % 2 == 0 )

        cout << integer1;

        else

        cout << integer1;

       

        if ( integer2 % 2 == 0 )

        cout << "  " << integer2;

        else

        cout << "  " << integer2;

       

        if ( integer3 % 2 == 0 )

        cout << "  " << integer3;

        else

        cout << "  " << integer3;

       

        if ( integer4 % 2 == 0 )

        cout << "  " << integer4;

        else

        cout << "  " << integer4;

       

        if ( integer5 % 2 == 0 )

        cout << "  " << integer5;

        else

        cout << "  " << integer5 << endl;

  8. Holder på med boken Deitel Deitel, C++ How to program.

    Holder på en oppgave der eg skal skrive inn to nummer. Resultatet skal vise forskjellen mellm de to tallene.

     

    Løser den slik " difference = integer1 - integer2 "

    Men når integer1 < integer2 ender egg opp med - forteikn.

    Prøvde å løyse det med ei IF setning, men fekk det ikkje til.

    Er det kanskje en annen måte å skrive det på slik at programmet ikkje viser fortegn?

  9. Hei!

    Jeg har en 1557K Centrino - Intel P-M 1.7GHz/512MB/80GB/DVD RW/15"/R9700 128MB. Kjoept for 1,5 aar siden.

     

    Jeg har de siste dagane hatt problem med skjermen. Maskinen starter helt normalt, men etter ca 5min blir skjermen helt svart. Alle programmer gaar normalt, det er bare skjermen som blir svart.

     

    Noen som har forslag til hva det kan vere? Noe jeg kan repeare selv, eller maa jeg bare sende den paa reprasjon?

     

     

    Takker for all hjelp.

×
×
  • Opprett ny...