Write a C program that prints an n by n magic square

Assignment Help C/C++ Programming
Reference no: EM131121663

Question:
(Main issue is in bold, other parts is already coded)
Write a C program that prints an n by n "magic square" (a square arrangement of the numbers 1, 2, ..., n2 in which the sums of the rows, columns, and diagonals are all the same). The user will specify the value of n.
Store the magic square in a two dimensional array. Start by placing the number 1 in the middle of row 0. Place each of the remaining numbers 2, 3, ... , n2 by moving up one row and over one column. Any attempt to go outside the bounds of the array should "wrap around" to the opposite side of the array. For example, instead of storing the next number in row -1 (row negative 1), we would store it in row n - 1 (the last row). Instead of storing the next number in column n, we would store it in column 0. If a particular element is already occupied, put the number directly below the previously stored number.
The magic square only needs to be up to 11 by 11 and can only be created from odd numbers.
I want you to use functions for this project. I would like you to separately declare and define 3 separate functions. One for creating the magic square and putting it the two dimensional array.One for printing the magic square (for your printf, use 5 minimum field width).Finally, one for getting and returning the sum of the numbers in the magic square array.
Take in input in the main function. If the input is an even number or is a number not between 1 and 11, exit the program. Also, print the value of the sum of magic numbers via the main function, since your function to calculate this should only be returning a integer.
For the sum of all the numbers in the magic square array, I want you to use while loops. You can use either for loops or while loops for the print and create magic number functions.
HINT: The only function that needs to return something is the sum magic square function (integer). The other two function don't need to return anything. C is a pass by value language, meaning that it typically can't change the values of arguments in functions. This doesn't apply to arrays because they are references (more in chapter 12). That means one argument in the functions should be a two dimensional array. You will be able to operate on this array.
Sample I/O:
Enter size of magic square: 3
8 1 6
3 5 7
4 9 2
Sum of Magic Numbers: 45
Enter size of magic square: 2
Invalid Input: 2
Enter size of magic square: 103
Invalid Input: 103
Enter size of magic square: 7
30 39 48 1 10 19 28
38 47 7 9 18 27 29
46 6 8 17 26 35 37
5 14 16 25 34 36 45
13 15 24 33 42 44 4
21 23 32 41 43 3 12
22 31 40 49 2 11 20
Sum of Magic Numbers: 1225

Reference no: EM131121663

Questions Cloud

What exactly do it yourself product relocating supplier next : What exactly do it yourself product relocating supplier next? Some do it yourself service company refers to professionals that supply a very restricted system.
Which components of this description correspond to the terms : The enzyme catalyzes the dehydration (release to air) of up to 107 CO2 molecules per second Which components of this description correspond to the terms enzyme, substrate, and turnover number?
Identify the benefits and drawbacks of using the capm : Explain how the CAPM assists in calculating the weighted average costs of capital (WACC) and its components.  Illustrate why some managers have difficulty applying the Capital Asset Pricing Model (CAPM) in financial decision making.
Market entry-market development-brand building activities : Develop a concise set of highly focussed marketing strategies for your most attractive and highest priority markets at Duke Energy. These strategies will guide your market entry, market development, and brand building activities. Establish budgets fo..
Write a C program that prints an n by n magic square : Write a C program that prints an n by n "magic square" (a square arrangement of the numbers 1, 2, ..., n2 in which the sums of the rows, columns, and diagonals are all the same). The user will specify the value of n.
Evaluate the validity and reliability of the data : Describe why each piece of evidence is relevant to patients, the community, and the hospital. Summarize the analysis used to create the recommendation. Evaluate the validity and reliability of the data
Mentions the theory of transaction cost analysis : 1. The chapter mentions the theory of transaction cost analysis (TCA). What role does TCA play in the decision to use a company sales force rather than independent manufacturers' agents?
Respond the - business ethics and stakeholder theory : Read the article titled, "Recognition, Reification, and Practices of Forgetting: Ethical Implications of Human Resource Management," located here. Be prepared to discuss. Next, analyze one (1) human resource ethical issue that you believe is promi..
What was the thickness of the resulting oil slick : By mistake, a quart of oil was dumped into a swimming pool that measures 25.0cm by 30.0cm (assume the oil spread entirely across the surface of the water in the pool)

Reviews

Write a Review

C/C++ Programming Questions & Answers

  Is the code properly commented

Does each case in a switch statement terminate with a break? Is there a default case?

  Develop a data representation for the current position

Develop a data representation for the current position of the ball. The position is best described with a pair of positive integers. Develop a data representation for velocity of the ball. You may assume that the ball always moves exactly 10 pixe..

  Write an iterative version and a recursive version

Write a main program that illustrates the work of your functions. E.g., if a[ ]={1,2,3,3,4,5} then 3 occurs 2 times and 7 occurs 0 times.

  Program to report on the roots of a quadratic equation

Write a complete C++ program to report on the roots of a quadratic equation ax2 + bx + c = 0, a ≠ 0. compute the roots.

  A stack is referred to as a last-in first-out

This lab, along with your TA, will help you navigate through designing, implementing, and testing a dynamic stack. Recall, a stack data structure is a restricted linked list, where only the top node in the stack may be accessed at any given time

  Write a short program to simulate a ball being dropped

Write a short program to simulate a ball being dropped off of a tower. To start, the user should be asked for the initial height of the tower in meters.

  Create an object oriented solution customer to purchase

Create an object oriented solution that allows a customer to purchase between 1 and 3 pizzas, add toppings to each pizza, if desired, and then displays a receipt, including the details for each pizza, a pretax total amount, and a grand total amoun..

  What are a class and a structure?

What are a class and a structure?

  Event model for marketing purposes

Many web sites make vigorous (over) use of many of the events in the dynamic HTML event model for marketing purposes. In some cases, one URL call may open 10 or more other Windows.

  How to call a function from main

Call a function from main(), passing one value to it. Return TWO values, both the square of the number and the number to the power of three.

  Make a program to play lottery

make a program to play lottery. The program randomly generates a Lottery of a three-digit number( any number from 100 to 999), prompts the user to enter a three-digit number, and determines

  Write a program to read an array of stored integers

write a program in C++ to read an array of stored integers. Search for a value using binary search method. If the element is found, print its location else print element not found

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd