What's new

Closed guys pahelp lng about sa Java Data inputs

Status
Not open for further replies.
Ako man tatanungin ko ang prof. agad eh tama naman yung mga nasabi mo, pinuna lang kita doon sa "realistic condition", since hindi naman sinabi sa problem kung anong vehicle ang gamit, ia-assume na lang natin by rules of science na yung time pwede lang maging 0 kung 0 din yung distance. Yung last quote mo pala hindi yan accurate.
Sir, ano hindi tama dun? Para saan ba ang tools?

Balik sa problem. Posible na mag-enter ng: 0 min, 1000m travelled. O kaya, 2400minutes, 0m distance travelled.
 
Sir, ano hindi tama dun? Para saan ba ang tools?

Balik sa problem. Posible na mag-enter ng: 0 min, 1000m travelled. O kaya, 2400minutes, 0m distance travelled.
Alam ko matalino kang tao at programmer ka alam mong hindi accurate yung quote na yun :LOL:.
By rules of science kasi yun, kung 0 ang time 0 din dapat ang distance bahala na si TS kung ano sa code yan.
 
Sa opinyon ko, mutually exclusive ang time-based vs distance-based charging. Halimbawa paano kung may nag-input ng 1200m distance travelled + 1 min (or even 0 min)? Paano mo iva-validate yun at ia-accumulate yung total charge? At higit sa lahat, hindi realistic yung condition. Ano ba yung sinakyan mo: taxi o bus? Hindi pwede taxi-bus.

Correct it's not realistic pero can be translated to a machine readable code.

"Halimbawa paano kung may nag-input ng 1200m distance travelled + 1 min (or even 0 min)? Paano mo iva-validate yun at ia-accumulate yung total charge?"

parang wala akong nakikitang problema dito sir. 1200m can be calculated based from the given formula. sabi kasi sir every 400m is charged 35 e. so ang code mo can be written as distanceInputed / 400 para makuha mo kung ilang 400m ang nasa loob ng 1200m tapos sa bandang baba ng code mo may formula ka pa dapat na 1200 % 400 para makuha mo whatever ang sosobra kasi for example ang input is 1300m diba? para makuha mo yung excess sa quotient mo at whatever the excess must be divided to 200m para ma charge mo ng 2.00 tapos whatever remains after ma divide to 200m must still be charged 2.00 based sa given formula. These applies the same pagdating sa minutes calculations. Ang nakikita ko lang dito na hindi realistic is gaya ng question namin sa taas na paano kung less than 5mins lang ang input? paano mo yun icocompute? alangan libre diba? kasi sa real world pwedeng tatakbo ang sasakyan ng maikling oras pero malayo na pala ang narating. So based sa problem, pwedeng less than 5mins lang pero higit 400m na pala ang tinakbo. So yun lang ang mejo vague sa problem solving na yan.
 
Being computationally-possible does not necessarily means it is sensible.

Bigyan kita ng 2 halimbawa: bus operator ka. Idineploy yung app mo. Ngayun, yung app mo ay naka-depende sa user input. Paano mo maire-restrict yung bus driver not to enter any silly inputs since your app computes the inputs regardless if it silly or sensible.

Example 2: I ask you to initialize a 1000-element int array to 0. The machine won't complain if you initialize it this way. It is in fact valid.

myarray[0] = 0;
myarray[1] = 0;
myarray[2] = 0;
...
myarray[1000] =0;

Will you initialize the array that way?
 
Sir homer_simpson tama naman talaga mga points mo ang iniimply lang namin for beginner lang yung problem tinuturo pa lang yung mga concepts as long as may matu-tutunan ang student sa problem and it makes sense at not necessary sa level nila kung yung problem conforms to real world standards, it will come after maintindihan na nila yung fundamentals.
 
Last edited:
Sir homer_simpson tama naman talaga mga points mo ang iniimply lang namin for beginner lang yung problem tinuturo pa lang yung mga concept as long as may matu-tutunan ang student sa problem and it makes sense at not necessary sa level nila kung yung problem conforms to real world standards, it will come after maintindihan na nila yung fundamentals.

Correct! hehe! seryoso masyado si sir homer_simpson e. We got your points pero it's just an student's exercises. kung baga child's play lang yung problem e. just to simulate their analytical capabilities. kaya nga sa bandang taas, na question na namin yung gaya sa concern mo pero hindi na namin inungkat kasi nga naiintindihan namin na pang student lang sya na problem.
 
OP pa update naman at post ng code mo jan kung may natutunan ka naman ba sa mga pinagdadaldal namin dito. haha!
 
Ok, kanya-kanya tayong opinyon which is fine. But for me, I put utmost importance to correctness from the beginning.

Eto, convert mo na lang sa java. Pasok dyan kahit 0 minute at 2000 miles or something. O kahit 0 mile at 24 hours :)

C++:
#include <iostream>

int quantity_unit_distance (float distance) {
    int count = distance/200;
    int remainder = distance-(count*200);
    if (remainder > 0) {
        count++;
    }
    return count;
}

int quantity_unit_time (float mytime) {
    int count = mytime/5;
    int remainder = count-(count*5);
    if (remainder > 0) {
        count++;
    }
    return count;
}

int main(void) {
    float total_time {0};
    float total_distance {0};
    float total_fare {0.00};
    float fare_by_distance {0.00};
    float fare_by_time {0.00};
    std::cout << "Enter total distance travelled (in meters): " << std::flush;
    std::cin >> total_distance;
    std::cout << "Enter total duration of travel (in minutes): " << std::flush;
    std::cin >> total_time;
    std::cout << std::endl;
     
    if (total_distance > 400) {
        std::cout << "Applying fare for over 400m travelled" << std::endl;
        fare_by_distance = 35.00 + (quantity_unit_distance(total_distance-400)*2.00);
    }
    else {
        std::cout << "Applying fare for under 400m travelled" << std::endl;
        fare_by_distance = 35.00;
    }

    if (total_time > 5) {
        std::cout << "Applying fare for 5mins OR more travelled" << std::endl;
        fare_by_time = quantity_unit_time(total_time)*5.00;
    }
    else {
        std::cout << "Applying fare for under 5mins travelled" << std::endl;
        fare_by_time = 5.00;
    }

    total_fare = fare_by_distance + fare_by_time;

    std::cout << "\nTOTAL AMOUNT TO PAY: " << total_fare << std::endl;
    return 0;
}
 
Last edited:
Status
Not open for further replies.

Similar threads

Back
Top