Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Am i doing programming right?

  1. Sep 26, 2012 #1
    I started programming like 1-2 months ago - In most of the questions I actually try to tell the computer what I would actually do to solve the problem. I am just telling the computer what humans would do to solve that problem.

    Is that the right practice?
  2. jcsd
  3. Sep 26, 2012 #2


    Staff: Mentor

    That's what programming is. You write the instructions that the computer performs. One of the steps in writing a program is to figure out an algorithm, which is the set of steps you would do in solving the problem. The next step is to write your code in using the programming language of your choice (or the one you are learning).
  4. Sep 27, 2012 #3
    Then why is it tough( some questions ). I just need to tell the computer what I would do in that question but still that is tough, why?

    Also some questions like finding gcd of two numbers- humans factorise the two numbers and multiply the common factors but for the computers we use euclid's algorithm. Why the different approaches?
  5. Sep 27, 2012 #4

    Yeah, that is pretty much the idea. Most computer programs are very routine logic, just done much faster than a human can do.

    I would add that most humans do a rather sloppy job with logic, this reflected in the poor quality of the average computer program. So try to do better than that, if you can. The main problem is that humans tend not to consider unusual cases and get a program that crashes whenever you do anything out of the ordinary.
  6. Sep 27, 2012 #5


    User Avatar

    Staff: Mentor

    Nobody ever prohibited humans from using Euclid algorithm nor computers from factorizing and multiplying common factors.

    Method with common factors is rather difficult to code - way more operations to do (preparing list of prime factors, managing two sets of factors, finding the intersection). Euclid algorithm is much more elegant. No idea why Euclid algorithm is not taught in schools as a method; perhaps for pedagogical reasons.
  7. Sep 27, 2012 #6
    That has some pretty wide-ranging possibilities

    Easier to answer if you would provide a sample of your code.

    What is your method of learning? (School, on-line courses, "how to" books, ...?)
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook