Back to 课程

Computer-Science-A-level-Ocr

0% Complete
0/0 Steps
  1. 3-3-networks
    8 主题
  2. 3-2-databases
    7 主题
  3. 3-1-compression-encryption-and-hashing
    4 主题
  4. 2-5-object-oriented-languages
    7 主题
  5. 2-4-types-of-programming-language
    4 主题
  6. 2-3-software-development
    5 主题
  7. 2-2-applications-generation
    6 主题
  8. 2-1-systems-software
    8 主题
  9. 1-3-input-output-and-storage
    2 主题
  10. 1-2-types-of-processor
    3 主题
  11. 1-1-structure-and-function-of-the-processor
    1 主题
  12. structuring-your-responses
    3 主题
  13. the-exam-papers
    2 主题
  14. 8-2-algorithms-for-the-main-data-structures
    4 主题
  15. 8-1-algorithms
    10 主题
  16. 7-2-computational-methods
    11 主题
  17. 7-1-programming-techniques
    14 主题
  18. 6-5-thinking-concurrently
    2 主题
  19. 6-4-thinking-logically
    2 主题
  20. 6-3-thinking-procedurally
    3 主题
  21. 6-2-thinking-ahead
    1 主题
  22. 6-1-thinking-abstractly
    3 主题
  23. 5-2-moral-and-ethical-issues
    9 主题
  24. 5-1-computing-related-legislation
    4 主题
  25. 4-3-boolean-algebra
    5 主题
  26. 4-2-data-structures
    10 主题
  27. 4-1-data-types
    9 主题
  28. 3-4-web-technologies
    16 主题
课 Progress
0% Complete

How do I answer an OCR A Level Computer Science programming question?

  • Programming questions can appear in both papers

  • Paper 1 may include questions that test understanding and interpretation of algorithms and computational thinking principles

  • Paper 2 is the dedicated component for assessing the ability to actively design, write, test, and refine programs

    • Section A questions can be answered using either pseudocode, flowcharts, bullet points, OCR Exam Reference Language or a high-level programming language

    • Section B questions must be answered using either OCR Exam Reference Language or a high-level programming language

  • To attempt a programming question that requires the writing of a new program, you should always ask yourself the following five key questions:

    • What are the inputs?

    • What are the outputs?

    • What processes take place?

    • What constructs will I need to use?

    • Do I need to use subprograms?

Example

Question

Octal is a base 8 number system.

To convert a denary number to base 8:

  • the denary value is divided by 8 and the remainder is stored

  • the integer value after division is divided by 8 repeatedly until 0 is reached

  • the remainders are then displayed in reverse order.

Example 1:

Denary 38

38 / 8 = 4 remainder 6 6

4 / 8 = 0 remainder 4 4

Octal = 46

Example 2:

Denary 57

57 / 8 = 7 remainder 1 1

7 / 8 = 0 remainder 7 7

Octal = 71

Write an algorithm to:

  • take a denary value as input from the user

  • convert the number to octal

  • output the octal value.

You do not need to validate the input from the user.

Write your algorithm using pseudocode or program code.

[6 marks]

What are the inputs? What are the outputs? What processes take place?

  • take a denary value as input from the user

  • the denary value is divided by 8 and the remainder is stored

  • the integer value after division is divided by 8 repeatedly until 0 is reached

  • the remainders are then displayed in reverse order.

  • output the octal value.

What constructs will I need to use?

  • Sequence

    • Calculating the remainder after division by 8 (MOD)

    • Calculating integer after division by 8 (DIV)

    • Ensure remainders are displayed in reverse order

  • Iteration

    • the number of divisions needed depends on the size of the input

    • You don’t know how many remainders to generate in advance

    • You need a repeat-until-0 process, which is best represented by a WHILE loop

Do I need to use subprograms?

  • This program can be written without the need to use a subprogram (function or procedure)

Answer

Pseudocode

number = input(“Enter a number”)

endResult = “”

while number != 0

remainder = number MOD 8

number = number DIV 8

endResult = str(remainder) + str(endResult)

endwhile

print endResult

Responses

您的邮箱地址不会被公开。 必填项已用 * 标注