wypełnianie tablicy dwywymiarowej tak by powstało koło

0

Witam
Jestem poczatkującym programistą. Mam problem i zwracam się do Was z prośbą o pomoc.
Muszę wypełnić tablice dwuwymiarową znakami '' tak by powstała tam "ścięte" od góry i od dołu koło. Dodatkowo w środku ma być wstawiony znak 'X'.
W zależności od wprowadzonych parametrów N i M koło ma być narysowane w tablicy o rozmiarach [(6+2
M)N+1] [(6+2M)*N-1]. a jego promień ma wynosić (3+M)*N.

Przykład kuli dla N=2 i M=1

     *******     
   ***********   
  *************  
  *************  
 *************** 
 *************** 
 *************** 
********X********
 *************** 
 *************** 
 *************** 
  *************  
  *************  
   ***********   
     *******     
 

Bardzo proszę o pomoc.

0

Równanie okręgu to x² + y² = r². Punkt należy do koła jeśli x² + y² ≤ r², więc wystarczy, że odpowiednio przesuniesz sobie współrzędne i gotowe.

0

Napisałem, że jestem poczatkującym programistą a nie matematykiem ;)
Znam równanie okręgu i twierdzenie pitagorasa.
Nie wiem natomiast jak zapisać to w c++ tak by działało.

1

Masz trzy opcje:

  • Czytasz jakiś kurs pierwsze kilka stron, po czym dasz rady to rozwiązać
  • Zmieniasz kierunek aby już nie mieć do czynienia z programowaniem
  • Zamawiasz wykonanie fachowcowi - 50 zł powinno wystarczyć
1

Pierwszy lepszy tutorial, dział "tablice".

mając dwuwymiarową tablicę tab, tab[2][2] oznacza trzecią kolumnę jej trzeciego rzędu. 2 i 2 to współrzędne które możesz potraktować jako x i y. R sobie ustalasz sam. W czym dalej problem?

2

Znasz rozmiary tablicy. Znasz promień, więc robisz podwójną pętlę for dla x i y i sprawdzasz równanie. Jeżeli się spełni to wstawiasz gwiazdkę, a jeżeli nie to spację. x i y odpowiadają pozycji na konsoli. W ramach ćwiczenia proponuję wypisać najpierw sobie kwadrat o rozmiarach M na N na konsoli.

0

Dzięki Sarrus, twoja wypowiedź trochę rozjaśniła mi co mam zrobić.
Reszcie też dziękuje, bez was koledzy na pewno nie dałbym rady.

1 użytkowników online, w tym zalogowanych: 0, gości: 1