Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.04.2012, 20:07   #1
BooR
 
Регистрация: 04.04.2012
Сообщений: 5
По умолчанию Заполнить массив в виде окружности

Заполнить массив в виде окружности причём радиус клавиатуры вводится с клавы!!! очень срочно!!!!
BooR вне форума Ответить с цитированием
Старый 04.04.2012, 20:27   #2
BooR
 
Регистрация: 04.04.2012
Сообщений: 5
По умолчанию

массив двумерный и заполнить его нужно нулями
BooR вне форума Ответить с цитированием
Старый 05.04.2012, 09:16   #3
vovken1997
Дружелюбный
Форумчанин
 
Аватар для vovken1997
 
Регистрация: 23.02.2012
Сообщений: 692
По умолчанию

Используйте матрицу,то есть массив с вашим разрешением экрана 640 на 480 стандарт. Создание цикл в котором перебираете углы в радианах. Ну и осталось применить косинус и синус для вашего угла и занести полученные координаты в матрицу. Точно не помню, но помоему
x:=cos(angle)+radius;
y:=sin(angle)+radius;
angle- угол который вы перебираете в массивный
radius- радиус круга
-==ЛЮБОЕ ЗНАНИЕ ДОСТИГАЕТСЯ ТОЛЬКО СОБСТВЕННЫМИ УСИЛИЯМИ!!!==-
vovken1997 вне форума Ответить с цитированием
Старый 05.04.2012, 09:27   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
радиус клавиатуры
ппц, я плакалЪ..
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 05.04.2012, 12:55   #5
BooR
 
Регистрация: 04.04.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от vovken1997 Посмотреть сообщение
Используйте матрицу,то есть массив с вашим разрешением экрана 640 на 480 стандарт. Создание цикл в котором перебираете углы в радианах. Ну и осталось применить косинус и синус для вашего угла и занести полученные координаты в матрицу. Точно не помню, но помоему
x:=cos(angle)+radius;
y:=sin(angle)+radius;
angle- угол который вы перебираете в массивный
radius- радиус круга
можешь пообную задачу найти а то так не очень понятно
BooR вне форума Ответить с цитированием
Старый 05.04.2012, 14:15   #6
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

Код:
uses crt;
var
a:array[1..9, 1..9] of integer;
radius,x,y,i,k:integer;
l:real;
begin
randomize;
for i:=1 to 9 do
 for k:=1 to 9 do
  a[i,k]:=random(100);
write('Radius=');
readln(radius);
while l<=6.28 do begin
l:=l+0.01;
x:=round(cos(l)*radius) +5; {5 - это центр матрицы, то есть выравниваем центр круга относительно центру матрицы}
y:=round(sin(l)*radius) +5;
a[x,y]:=0;
end;
for i:=1 to 9 do begin
 for k:=1 to 9 do
  write(a[i,k], ' ');
   writeln;
 end;
readln;
end.
there are no limits when you're software engineer

Последний раз редактировалось spein; 05.04.2012 в 15:04.
spein вне форума Ответить с цитированием
Старый 05.04.2012, 15:09   #7
BooR
 
Регистрация: 04.04.2012
Сообщений: 5
По умолчанию

ещё такой вопрос откуда берутся цифры while l<=6.28 do begin и l:=l+0.01;
BooR вне форума Ответить с цитированием
Старый 05.04.2012, 15:13   #8
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

6.28 это Pi * 2 (3.14 * 2 = 6.28). От шага(0.01) зависит точность. Можно взять и 0.1
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Старый 05.04.2012, 15:16   #9
BooR
 
Регистрация: 04.04.2012
Сообщений: 5
По умолчанию

спасибо огромное очень выручил
BooR вне форума Ответить с цитированием
Старый 05.04.2012, 15:20   #10
spein
Программист
Форумчанин
 
Аватар для spein
 
Регистрация: 27.02.2009
Сообщений: 505
По умолчанию

Пожалуйста. Задание ведь не сложное.
there are no limits when you're software engineer
spein вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заполнить массив? L6go1as Общие вопросы C/C++ 2 02.11.2011 19:34
Заполнить массив по спирали BeSHyLLlka Помощь студентам 2 20.09.2011 09:57
Заполнить массив welcomeTo Помощь студентам 5 02.04.2011 17:34
Заполнить массив Файзулка Помощь студентам 2 24.01.2011 23:50
Заполнить массив mila111189 Помощь студентам 1 04.11.2010 00:09