|
|
|
|
Fomik |
Воскресенье, 02 Марта 2008, 15:40
|
Участник
Профиль
Группа: Участник
Сообщений: 78
Регистрация: 07.06.2007
Из: с. Богуславка
Пользователь №: 15419
Конфигурация
Корпус: -- Процессор: Athlon XP Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: 5.25" CD/DVD: -- Модем: Внешний Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: Windows XP SP3 Game Edition Прочее: --
|
вот задачки: с клавиатуры вводится целое число n. Напишите программу, которая рисует с помощью * р\б треугольник с основанием и ребром, равным n. Уважаемые программисты, решение нужно срочно. Пользоваться можно только условным оператором, циклом For, логическими операциями. и ещё: даны координаты четырёх точек A, B, C, D на коодинатной прямой. Не применяя циклов, определите длину пересечения отрезков AB и CD. Если отрезки не пересекаются, выведети ноль.
Добавлено Fomik, второую задачку я так решить и не смог.
Добавлено Fomik, ах, да чуть, не забыл. типы переменных только Integer, boolean, и никаких массивов.
|
|
|
|
|
Ответы
(1 - 12) |
shplint |
Воскресенье, 02 Марта 2008, 19:29
|
Участник
Профиль
Группа: Участник
Сообщений: 156
Регистрация: 22.10.2005
Из: Россия, Семенов
Пользователь №: 9791
Конфигурация
Корпус: -- Процессор: Athlon 64 (socket 754/939/AM2) Материнская плата: Epox 9npa+ Оперативная память: SUMSUNG 256Мб,+384мб Видеокарта: Ati radeon x700 Жесткий диск (винчестер): Seagate Barracuda IV 340016A Дисковод: Нет дисковода CD/DVD: TEAC DW-552G, LG-GCR8500B Модем: smart ax mt880 Сетевой адаптер: -- Звуковая плата: -- Монитор: SUMSUNG SM 753DFX Операционная система: Windows XP Прочее: --
|
вторая задача решается так: 1. координаты векторов АВ{Xb-Xa;Yb-Ya}, CD{Xd-Xc;Yd-Yc} 2. Условие коллинеарности векторов: если (Xb-Xa)/(Xd-Xc)<>(Yb-Ya)/(Yd-Yc) то твои отрезки пересекаются 3. Сравниваешь длины отрезков, к примеру |AB|<|CD|->(AB)э(CD) и длина пересечения равна |AB|
Сообщение отредактировал shplint - Воскресенье, 02 Марта 2008, 19:33
|
|
|
|
|
Квазимодо |
Понедельник, 03 Марта 2008, 11:45
|
Участник
Профиль
Группа: Участник
Сообщений: 162
Регистрация: 25.11.2003
Пользователь №: 6223
Конфигурация
Корпус: -- Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Кстати, малость уточним: на координатной прямой или плоскости? Если прямой, то векторы AB и CD всегда коллинеарны, а алгоритм можно придумать что-то вроде этого: 1. Определим, какой из отрезков меньше по длине (AB или CD). Допустим, выяснилось, что AB, и при этом x(A)<=x(B), x(С)<=x(D) (x(Y) - координата точки Y). Тогда 2. определим, попадают ли точки A и B внутрь отрезка CD. 3. Если не попадает ни одна, отрезки не пересекаются. 4. Если А не попадает, а B попадает, то отрезок пересечения - CB. 5. Если A попадает, а B нет, то отрезок пересечения - AD. 6. Если и А, и B попали, то весь отрезок AB находится внутри отрезка CD. Если же точки A,B,C,D на плоскости (а не на прямой), то shplint несколько упростил: речь ведь о пересечени отрезков, а не прямых, т.е. найденная точка пересечения еще должна попасть внутрь каждого отрезка.
--------------------
Я долго учился на чужих ошибках, и теперь мои собственные ошибки не хуже, чем у других.
|
|
|
|
|
Fomik |
Вторник, 04 Марта 2008, 13:11
|
Участник
Профиль
Группа: Участник
Сообщений: 78
Регистрация: 07.06.2007
Из: с. Богуславка
Пользователь №: 15419
Конфигурация
Корпус: -- Процессор: Athlon XP Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: 5.25" CD/DVD: -- Модем: Внешний Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: Windows XP SP3 Game Edition Прочее: --
|
Люди, я что уже не пробовал делать, как решать вообще не знаю. Насчёт коллинеарности векторов мне ничего не говорите (мои знания на уроване 8 класса) поэтому не могли бы вы решить эти задачки. Мне скоро отправлять их решения, для меня каждый день дорог. Во первой задаче понятно, что надо использовать цикл, я дошёл до того, что у меня рисуется квадрат, как же теперь по диагонали отсечь, что у меня рисовался пу треугольник? а потом уже каждую звёздочку сдвинуть несколько вправо. Весь смысл задачи приходится на рисовании вот чего: * * * * * * * * * * * * * * * * * * * * * что-то толком не рисуется здесь. это вторая стадия задачи. как её получить?
Сообщение отредактировал Fomik - Вторник, 04 Марта 2008, 13:13
|
|
|
|
|
Админ |
Вторник, 04 Марта 2008, 15:00
|
Администратор
Профиль
Группа: WinCity Team
Сообщений: 670
Регистрация: 01.10.2000
Пользователь №: 1
Конфигурация
Корпус: Sony VAIO VGN-FW21MR Процессор: Centrino/Core Duo Материнская плата: Intel PM45 Оперативная память: 4096 Мб DDR2 800 МГц Видеокарта: ATI Mobility Radeon HD3470 256 Мб GDDR3 Жесткий диск (винчестер): 320 Гб Serial ATA 5400 об/мин TOSHIBA MK3252GSX Дисковод: Нет дисковода CD/DVD: Blu-Ray, MATSHITA BD-MLT UJ230AS Модем: встроенный Сетевой адаптер: встроенный, Marvell Yukon 88E8055 PCI-E Gigabit Ethernet Controller Звуковая плата: встроенная, Realtek ALC262 Монитор: 17'' Samsung SyncMaster 757NF Операционная система: Vista Home Premium x64 SP2 Прочее: WiFi встроенный Intel(R) WiFi Link 5100 ABG
|
Квазимодо, shplint, Зачем все так сложно, какие вектора. Ясно же сказано, то Цитата(Fomik @ Воскресенье, 02 Марта 2008, 16:40) даны координаты четырёх точек A, B, C, D на коодинатной прямой. На ПРЯМОЙ, т.е. точка А - начало первого отрезка, точка B - конец первого отрезка. Точка C- начало второго отрезка, точка D - конец второго отрезка. Отрезки расположены на одной прямой.
--------------------
"Спорит либо дурак, либо подлец. Первый - не знает, а спорит, второй - знает, но спорит" Геральт из Ривии, ведьмак (© А. Сапковский, Сага о Ведьмаке)
|
|
|
|
|
shplint |
Вторник, 04 Марта 2008, 20:41
|
Участник
Профиль
Группа: Участник
Сообщений: 156
Регистрация: 22.10.2005
Из: Россия, Семенов
Пользователь №: 9791
Конфигурация
Корпус: -- Процессор: Athlon 64 (socket 754/939/AM2) Материнская плата: Epox 9npa+ Оперативная память: SUMSUNG 256Мб,+384мб Видеокарта: Ati radeon x700 Жесткий диск (винчестер): Seagate Barracuda IV 340016A Дисковод: Нет дисковода CD/DVD: TEAC DW-552G, LG-GCR8500B Модем: smart ax mt880 Сетевой адаптер: -- Звуковая плата: -- Монитор: SUMSUNG SM 753DFX Операционная система: Windows XP Прочее: --
|
Админ, на всякий случай если ты забыл, то расстояние скажем от точки а до точки В есть вектора|AB|.
|
|
|
|
|
Барэль |
Вторник, 04 Марта 2008, 21:33
|
Впередсмотрящий
Профиль
Группа: WinCity Team
Сообщений: 6383
Регистрация: 08.11.2001
Из: Санкт-Петербург, Россия
Пользователь №: 633
Конфигурация
Корпус: CM Centurion 534 + 850W Zalman Процессор: Другой Материнская плата: ASUS M4A79XTD EVO Оперативная память: Samsung - 2x2048 Mb DDR3 PC10600 Видеокарта: 1024 Mb Asus Radeon HD5770 Жесткий диск (винчестер): 250 Gb Seagate SATA (системный) + 2 Tb Seagate LP SATA + 2 Tb Seagate LP SATA Дисковод: 3.5" CD/DVD: Nec 4570 DVD+-RW Модем: -- Сетевой адаптер: OnBoard Звуковая плата: OnBoard Монитор: 22 Samsung SyncMaster P2250 Операционная система: Windows XP Прочее: Акустическая система Microlab Solo 1, UPS APC CS500, МФУ Canon MP800, Cooler CoolerMaster (CM) V8, Процессор AMD Phenom II 945
|
shplint, Цитата(shplint @ Сегодня, 21:41) на всякий случай если ты забыл расстояние скажем от точки А до точки В есть ОТРЕЗОК ВекторОтрезок
--------------------
Вот. Винда проставилась. И даже уже BSOD выдала. Значит, работает! На всякий случай, воспользуйтесь поиском
|
|
|
|
|
shplint |
Среда, 05 Марта 2008, 10:41
|
Участник
Профиль
Группа: Участник
Сообщений: 156
Регистрация: 22.10.2005
Из: Россия, Семенов
Пользователь №: 9791
Конфигурация
Корпус: -- Процессор: Athlon 64 (socket 754/939/AM2) Материнская плата: Epox 9npa+ Оперативная память: SUMSUNG 256Мб,+384мб Видеокарта: Ati radeon x700 Жесткий диск (винчестер): Seagate Barracuda IV 340016A Дисковод: Нет дисковода CD/DVD: TEAC DW-552G, LG-GCR8500B Модем: smart ax mt880 Сетевой адаптер: -- Звуковая плата: -- Монитор: SUMSUNG SM 753DFX Операционная система: Windows XP Прочее: --
|
длинна которого равна модулю вектора АВ, а эти ссылочки мог бы и не писать, вектора я знаю хорошо и вообще с математикой у мееня нет проблем в отличе от некоторых...
|
|
|
|
|
Админ |
Среда, 05 Марта 2008, 12:46
|
Администратор
Профиль
Группа: WinCity Team
Сообщений: 670
Регистрация: 01.10.2000
Пользователь №: 1
Конфигурация
Корпус: Sony VAIO VGN-FW21MR Процессор: Centrino/Core Duo Материнская плата: Intel PM45 Оперативная память: 4096 Мб DDR2 800 МГц Видеокарта: ATI Mobility Radeon HD3470 256 Мб GDDR3 Жесткий диск (винчестер): 320 Гб Serial ATA 5400 об/мин TOSHIBA MK3252GSX Дисковод: Нет дисковода CD/DVD: Blu-Ray, MATSHITA BD-MLT UJ230AS Модем: встроенный Сетевой адаптер: встроенный, Marvell Yukon 88E8055 PCI-E Gigabit Ethernet Controller Звуковая плата: встроенная, Realtek ALC262 Монитор: 17'' Samsung SyncMaster 757NF Операционная система: Vista Home Premium x64 SP2 Прочее: WiFi встроенный Intel(R) WiFi Link 5100 ABG
|
shplint, увижу еще один пост в этой теме про твои математические способности - забаню. В контексте рассматриваемой задачи, понятием "отрезок" оперировать легче, так что не грузи человека лишней информацией. Блистать своими знаниями геометрических терминов нужно тогда, когда от них есть толк. А от твоих знаний пока прока здесь не видно, только путаницу создаешь со своей коллинеарностью и прочими выкладками в элементарной задаче.
--------------------
"Спорит либо дурак, либо подлец. Первый - не знает, а спорит, второй - знает, но спорит" Геральт из Ривии, ведьмак (© А. Сапковский, Сага о Ведьмаке)
|
|
|
|
|
Fomik |
Среда, 05 Марта 2008, 14:14
|
Участник
Профиль
Группа: Участник
Сообщений: 78
Регистрация: 07.06.2007
Из: с. Богуславка
Пользователь №: 15419
Конфигурация
Корпус: -- Процессор: Athlon XP Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: 5.25" CD/DVD: -- Модем: Внешний Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: Windows XP SP3 Game Edition Прочее: --
|
я додумался до того, что надо рассмотреть все варианты расположения точек, а их 24!
|
|
|
|
|
Квазимодо |
Среда, 05 Марта 2008, 15:06
|
Участник
Профиль
Группа: Участник
Сообщений: 162
Регистрация: 25.11.2003
Пользователь №: 6223
Конфигурация
Корпус: -- Материнская плата: -- Оперативная память: -- Видеокарта: -- Жесткий диск (винчестер): -- Дисковод: Нет дисковода CD/DVD: -- Модем: -- Сетевой адаптер: -- Звуковая плата: -- Монитор: -- Операционная система: -- Прочее: --
|
Fomik, по-моему, не обязательно. Достаточно сделать так: для отрезка AB определить целочисленные переменные x1, x2 (координаты точек, при этом x1<x2, т.е. либо x1:=x( A ), x2:=x( B ), либо наоборот; x1 - самая левая точка отрезка AB, если считать, что координатная ось идет слева направо) и булевую Flag12 (если координата точки A меньше, чем B, то True, иначе False). Аналогично, для отрезка CD вводим переменные x3, x4 (x3<x4) и Flag34. А дальше проверяем попадание координат x1 и x2 в промежуток между x3 и x4 (если (x1-x3)*(x1-x4)<=0, то эта точка попадает на отрезок CD, иначе нет; аналогично для x2), т.е. алгоритм такой, какой приведен в моем предыдущем сообщении.
--------------------
Я долго учился на чужих ошибках, и теперь мои собственные ошибки не хуже, чем у других.
|
|
|
|
|
shplint |
Среда, 05 Марта 2008, 23:23
|
Участник
Профиль
Группа: Участник
Сообщений: 156
Регистрация: 22.10.2005
Из: Россия, Семенов
Пользователь №: 9791
Конфигурация
Корпус: -- Процессор: Athlon 64 (socket 754/939/AM2) Материнская плата: Epox 9npa+ Оперативная память: SUMSUNG 256Мб,+384мб Видеокарта: Ati radeon x700 Жесткий диск (винчестер): Seagate Barracuda IV 340016A Дисковод: Нет дисковода CD/DVD: TEAC DW-552G, LG-GCR8500B Модем: smart ax mt880 Сетевой адаптер: -- Звуковая плата: -- Монитор: SUMSUNG SM 753DFX Операционная система: Windows XP Прочее: --
|
Админ, я по-моему тебе уже говорил что мне пофигу на твои угрозу, я выражаю свои мысли и мне пофиг че тебя не устраивает, understand
Добавлено, Админ: 2 shplint: Мишенька, я тебе не угрожаю, я тебя предупреждаю и предостерегаю от высказываний, нарушаюших правила общения на форуме и в этом топике в частности. Меня не устраивают не содержание твоих мыслей (об этом у меня уже давно сложилось однозначное мнение), а та форма в которой ты их пытаешься тут излить. И так как повлиять на первое я не в силах (на и не помогло бы), то со вторым я могу (и должен) бороться. Поэтому, извини, но тебе придется помолчать здесь несколько дней. Можешь подумать над своим поведением или же сидеть и раздуваться от осознания независимости собственного мнения, мне все-равно. Но если снова будут появляться твои высказывания в подобной форме или с содержанием, нарушающим Правила форума - придется закрыть тебе доступ сюда. И ничего личного...
|
|
|
|
|
Барэль |
Среда, 05 Марта 2008, 23:52
|
Впередсмотрящий
Профиль
Группа: WinCity Team
Сообщений: 6383
Регистрация: 08.11.2001
Из: Санкт-Петербург, Россия
Пользователь №: 633
Конфигурация
Корпус: CM Centurion 534 + 850W Zalman Процессор: Другой Материнская плата: ASUS M4A79XTD EVO Оперативная память: Samsung - 2x2048 Mb DDR3 PC10600 Видеокарта: 1024 Mb Asus Radeon HD5770 Жесткий диск (винчестер): 250 Gb Seagate SATA (системный) + 2 Tb Seagate LP SATA + 2 Tb Seagate LP SATA Дисковод: 3.5" CD/DVD: Nec 4570 DVD+-RW Модем: -- Сетевой адаптер: OnBoard Звуковая плата: OnBoard Монитор: 22 Samsung SyncMaster P2250 Операционная система: Windows XP Прочее: Акустическая система Microlab Solo 1, UPS APC CS500, МФУ Canon MP800, Cooler CoolerMaster (CM) V8, Процессор AMD Phenom II 945
|
shplint, 5 дней read only. Цитата(shplint @ Сегодня, 0:23) understand
--------------------
Вот. Винда проставилась. И даже уже BSOD выдала. Значит, работает! На всякий случай, воспользуйтесь поиском
|
|
|
|
|
|
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
|
0 Пользователей:
|
© Copyright by WinCity.Ru 2001 - 2008 | Обратная связьУслуги веб-хостинга предоставлены компанией MTW.RU
|
|
|
|