Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.65/52: Рейтинг темы: голосов - 52, средняя оценка - 4.65
chulkov-93
1 / 1 / 0
Регистрация: 19.11.2010
Сообщений: 10
#1

Построить ломаную по заданным вершинам

23.08.2011, 10:46. Просмотров 9476. Ответов 40

Помогите решить несколько задач по Си:

1.Дан файл f, компоненты которого являются целыми числами. Найти:количество квадратов нечетных чисел среди компонент.

2.Дан текстовый файл f. Записать в перевернутом виде строки файла f в файл g. Порядок строк в файле g должен быть обратным по оношению к порядку строк исходного файла.

3.Построить ломаную по заданным вершинам. Вершины указываются с клавиатуры (см. задачу 900).

задача 900:При работе с графическим изображением часто возникает необходимость выбрать одну или несколько точек экрана. Так, например, для того чтобы построить отрезок, следует задать два его конца, для построения окружности можно задать ее центр и любую точку на окружности и т. д. Для указывания требуемой точки обычно используют курсор. Курсор может иметь одну, из следующих конфигураций:
а) Перекрестье (рис. 95, а). Указываемая точка-это точка пересечения двух прямых.
б) Крестик (рис. 95,6). Указываемая точка-это точка пересечения двух коротких отрезков.
в) Стрелка (рис. 95, б). Указываемая точка-это точка, в которую помещается острие стрелки.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.08.2011, 10:46
Ответы с готовыми решениями:

Дано n точек на плоскости, за время n*logn построить (n-1)-звенную ломаную
Дано n точек на плоскости, заданных своими декартовыми координатами. За время...

За время n logn построить (n-1)звенную не пресекающую себя ломаную проходящую через все точки
Дано n точек на плоскости заданных своими декартовыми координатами. За время n...

Дано 20 натуральных чисел. Каждая пара чисел определяет положение вершины ломаной на экране. Построить ломаную
а можно эту программу в с++? спасибо

По заданным ребрам построить дерево
в общем, задача такова: Даны ребра как на картинке (обозначил римской цифрой...

Построить прямоугольник по двум заданным точкам
Построить прямоугольник по двум заданным точкам: левому верхнему и правому...

40
soft.creator
104 / 104 / 11
Регистрация: 17.10.2010
Сообщений: 283
23.08.2011, 11:26 #2
Цитата Сообщение от chulkov-93 Посмотреть сообщение
Найти:количество квадратов нечетных чисел среди компонент.
Сломал мозг


Цитата Сообщение от chulkov-93 Посмотреть сообщение
Курсор может иметь одну, из следующих конфигураций:
а) Перекрестье (рис. 95, а). Указываемая точка-это точка пересечения двух прямых.
б) Крестик (рис. 95,6). Указываемая точка-это точка пересечения двух коротких отрезков.
Ну нельзя так с самого утра.
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 12:06 #3
Цитата Сообщение от soft.creator Посмотреть сообщение
Сломал мозг
Элементарно. Нужно взять квадратный корень и убедиться, что корень является нечётным числом.
А преподы, конечно, молодцы. Приучают студентов общаться с неадекватными заказчиками.)))

Добавлено через 58 секунд
Цитата Сообщение от soft.creator Посмотреть сообщение
Ну нельзя так с самого утра
Да тоже всё понятно.
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 12:11 #4
Цитата Сообщение от Deviaphan Посмотреть сообщение
Элементарно. Нужно взять квадратный корень...
ошибки могут быть, в компьютере не точное представление дробных чисел. Вообще лучше разложить число на множители, и если оно в виде http://www.cyberforum.ru/cgi-bin/latex.cgi?$n=p_1^{a_1}...p_n^{a_n}$, где a1,...,an -четные числа, то смотреть дальше
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 12:17 #5
Цитата Сообщение от Olga_ Посмотреть сообщение
ошибки могут быть
Не могут
Цитата Сообщение от chulkov-93 Посмотреть сообщение
компоненты которого являются целыми числами
0
-=ЮрА=-
Заблокирован
Автор FAQ
23.08.2011, 12:17 #6
Цитата Сообщение от chulkov-93 Посмотреть сообщение
Найти:количество квадратов нечетных чисел среди компонент.
- нечётный - номер числа или же само число
Цитата Сообщение от chulkov-93 Посмотреть сообщение
Дан текстовый файл f. Записать в перевернутом виде строки файла f в файл g. Порядок строк в файле g должен быть обратным по оношению к порядку строк исходного файла.
- какие нибудь предпочтения есть - Си или С++?

Цитата Сообщение от chulkov-93 Посмотреть сообщение
Построить ломаную по заданным вершинам. Вершины указываются с клавиатуры (см. задачу 900).
- построить ломаную по щелчкам мыши или же по точкам введенным с клавиатуры?Строить в консоле или окне (мне без разницы где - и там и там умею графику реализовывать). Если в окне - MFC, API или MDI?

chulkov-93, ответь пожалусто на мои вопросы и я очень быстро реализую, жду...
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 12:20 #7
Deviaphan, корень из целых чисел - уже не всегда целое число. Ну, раз нравится, пожалуйста. Корни тоже хитрым образом вычисляются, я в данном случае за целочисленную арифметику. С корнями легко больно.
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 12:24 #8
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
MFC, API или MDI
MDI может быть и на MFC и на голом WinAPI.

Добавлено через 2 минуты
Цитата Сообщение от Olga_ Посмотреть сообщение
Deviaphan, корень из целых чисел - уже не всегда целое число.
Но нечётные числа они же целые будут.) Погрешность представления легко нивелировать.
Потом приводишь к инту и смотришь младший бит. И никаких разложений.
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 12:27 #9
Цитата Сообщение от Deviaphan Посмотреть сообщение
Потом приводишь к инту и смотришь младший бит. И никаких разложений.
Да разложение к тому, чтобы корень не брать, а уж на четность проверить
C++
1
if (a & 1)
это просто
А может объявить конкурс на лучшие (собственные) методы проверки, является ли данное число точным квадратом другого?
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 12:32 #10
Цитата Сообщение от Olga_ Посмотреть сообщение
Да разложение к тому, чтобы корень не брать
А разложение эффективнее чем взятие корня?
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 12:34 #11
Цитата Сообщение от Deviaphan Посмотреть сообщение
А разложение эффективнее чем взятие корня.
Так вот я об этом и говорю
0
almazsr
233 / 170 / 25
Регистрация: 13.11.2010
Сообщений: 425
23.08.2011, 12:34 #12
Deviaphan, по-вашему нужно брать каждую компоненту и проверять является ли она квадратом какого-либо нечетного числа, то есть пробегаться по всем доступным нечетным числам? Или искать в файле квадраты нечетных чисел?
Квадраты нечетных чисел сами нечетны, поэтому поиск облегчится.
Цитата Сообщение от chulkov-93 Посмотреть сообщение
Построить ломаную по заданным вершинам.
используйте линейный сплайн.
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 12:35 #13
Цитата Сообщение от Olga_ Посмотреть сообщение
Так вот я об этом и говорю
Я там знак вопросика пропустил.)
Я всё равно не знаю, как эффективно реализовывать разложение.)))
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 12:37 #14
Цитата Сообщение от almazsr Посмотреть сообщение
Deviaphan, по-вашему нужно брать каждую компоненту и проверять является ли она квадратом какого-либо нечетного числа, то есть пробегаться по всем доступным нечетным числам?
Да нет, тут спор такой, что если корень числа - не целое число, то оно нам не подходит. Так вот проверку можно без корней проводить
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 12:40 #15
Цитата Сообщение от Olga_ Посмотреть сообщение
Так вот проверку можно без корней проводить
Да я понял. Думал, что разложение дольше корня работает.)
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 12:42 #16
Цитата Сообщение от Deviaphan Посмотреть сообщение
Да я понял. Думал, что разложение дольше корня работает.)
Так это не вам ответ был А вы думали, что корни в компьютере так легко вычисляются, раз и все
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 12:47 #17
Цитата Сообщение от Olga_ Посмотреть сообщение
корни в компьютере так легко вычисляются, раз и вс
Есть подозрение, что на аппаратном уровне разложение эффективнее происходит, чем ручками.)))
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 13:15 #18
Цитата Сообщение от Deviaphan Посмотреть сообщение
Есть подозрение, что на аппаратном уровне разложение эффективнее происходит, чем ручками.)))
Про аппаратный уровень никто не спорит, речь о программном.
0
Deviaphan
Делаю внезапно и красиво
Эксперт С++
1306 / 1221 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
23.08.2011, 13:28 #19
Цитата Сообщение от Olga_ Посмотреть сообщение
речь о программном
Но ведь корень вычисляется аппаратно. Сопроцессором.
0
Olga_
842 / 184 / 18
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 13:33 #20
Цитата Сообщение от Deviaphan Посмотреть сообщение
Но ведь корень вычисляется аппаратно. Сопроцессором.
Ну ладно, спорить не буду, просто не всегда и все делает аппаратура, для полноты мышления надо разные варианты рассматривать, но это мое мнение.
0
23.08.2011, 13:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.08.2011, 13:33

Построить вектор, имеющий с заданным углом -45 градусов
помогите пожалуйста сделать задачу в с++ построить вектор имеющий с заданным...

Code::Blocks Построить 3 графика по заданным уравнениям
Заранее спасибо откликнувшимся. // Требовалось решить задачу Коши ур-ием...

Написать условие: Можно ли по заданным координатам построить трапецию?
... в 72 строке ЗЫ Я весь код скинул т.к. возможно понадобится остальное....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru