Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Помогите решить задачу на Си

Ответить
Настройки темы
C/C++ - Помогите решить задачу на Си

Новый участник


Сообщения: 9
Благодарности: 1

Профиль | Отправить PM | Цитировать


задача не затейливая, но вот я никак не могу её должным образом решить.
В общем, надо нарисовать прямоугольный треугольник вида
*
**
***
*****
примерно такого, учитель нам такой показывал, стороны треугольника 4*5
проблема в том, что я никак не могу найти формулу, по которой прога рисовала бы треугольник с нужными мне сторонами. всегда получается, что в конце то больше, то меньше заданного числа...

уже долго бьюсь над этой задачей, но никак не могу её решить
пробовал через деление, пробовал через другие формулы треугольников, но никак не получается, уже руки опустились

Отправлено: 23:42, 08-11-2011

 

Аватара для yurfed

Ветеран


Сообщения: 18053
Благодарности: 2798

Профиль | Отправить PM | Цитировать


Цитата friter:
проблема в том, что я никак не могу найти формулу, по которой прога рисовала бы треугольник с нужными мне сторонами. »
Геометрию учить не пробовали?
Прямоугольный треугольник
Или например Прямоугольный треугольник. Определение тригонометрических функций. Прямоугольный треугольник. Тригонометрические формулы. Прямоугольный треугольник. Теорема Пифагора......

-------
Мнение большинства людей всегда ошибочно, ибо большинство людей - идиоты.
~ Эдгар Аллан По ~


Отправлено: 00:15, 09-11-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 9
Благодарности: 1

Профиль | Отправить PM | Цитировать


в том то и дело, что данные вами статьи я изучал, однако все равно не получается

Отправлено: 00:34, 09-11-2011 | #3


Аватара для lxa85

Необычный


Contributor


Сообщения: 4335
Благодарности: 962

Профиль | Сайт | Отправить PM | Цитировать


friter, хотелось бы видеть ход рассуждений. Это первое.
Второе, если хочется ответ здесь и сразу - изучайте машинную графику и алгоритмы построение треугольников с этой точки зрения.

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 01:00, 09-11-2011 | #4


Новый участник


Сообщения: 9
Благодарности: 1

Профиль | Отправить PM | Цитировать


#include <stdio.h>
#include <math.h>
int main(void){
int a, Ta=0, b;
float temp=1, angle;
// ну тут понятно, воодятся 2 числа для сторон а и б
printf("a= b=\n");
scanf("%d %d", &a, &b);
//переходит со строчки на строчку
for(int i=0; i<a; i++){
printf("\n");
//вот тут и должна по моему располагаться формула
Ta++;
temp=tan(Ta/temp);

пока эксперементирую с формулами

//печатает заданное количество звездочек на строчке(я пока использую цифры, тк постоянно считать звездочки надоело)
for(int j=0; j<temp; j++)
printf("%2.f", temp);
}
return 0;
}

у меня уже голова не варит, тонны литературы просмотрел... Говорят чтобы стать мудрым, надо прочесть всего 3 книги, но чтобы найти их, нужно прочесть сотни. А вот на сотни у меня как раз таки времени нет...

Последний раз редактировалось friter, 09-11-2011 в 01:06. Причина: дополняю

Это сообщение посчитали полезным следующие участники:

Отправлено: 01:04, 09-11-2011 | #5


Аватара для ferget

Разный


Сообщения: 1294
Благодарности: 359

Профиль | Отправить PM | Цитировать


вроде так

Код: Выделить весь код
 int size =; 
    int i, j ;
    for(i = 1; i < size; i++){
        for(j=0; j<i; j++)
          printf("*");          
        printf("\n");
    }

Последний раз редактировалось ferget, 09-11-2011 в 04:42.


Отправлено: 02:20, 09-11-2011 | #6


Новый участник


Сообщения: 9
Благодарности: 1

Профиль | Отправить PM | Цитировать


этот вариант сразу отпадает, тк стороны А и В у треугольника могут быть не равными, к примеру 4*5 или 20*60 или 7*13 ну и тд...

Отправлено: 03:07, 09-11-2011 | #7


В Поисках Истины


Сообщения: 802
Благодарности: 135

Профиль | Отправить PM | Цитировать


Что то не совсем понятно, как из звездочек ("разного количества") может получится прямоугольный треугольник...
Вот например, как Вы говорите 4х5:
HTML код: Выделить весь код
* * ** *** ****

верхний элемент уже является лишним.
Получается только с равными катетами.

-------
foreach(short w in new short[] {73,3,79,83,90,79,78,69}){
Console.Write((char)w);
}


Отправлено: 07:37, 09-11-2011 | #8


Аватара для lxa85

Необычный


Contributor


Сообщения: 4335
Благодарности: 962

Профиль | Сайт | Отправить PM | Цитировать


Цитата friter:
//вот тут и должна по моему располагаться формула
Ta++;
temp=tan(Ta/temp);
пока эксперементирую с формулами »
Вот эти самые формулы и интересуют.
какие формулы смотрелись, почему не устроили и т.д. "Тонны литературы" не говорят ни о чем.

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:05, 09-11-2011 | #9


Ветеран


Сообщения: 2782
Благодарности: 575

Профиль | Отправить PM | Цитировать


Не нужны здесь тригонометрические функции:
цикл от 1 до a
на каждом шаге прибавляем отношение a к b, округляем - выводим это кол-во звёздочек

чтобы звёздочки по вертикали рисовались правильно, принудительно округляем до единицы всё, что меньше
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:22, 09-11-2011 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Помогите решить задачу на Си

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
C/C++ - Помогите решить задачу Urann Программирование и базы данных 11 14-05-2013 11:44
C/C++ - Помогите решить задачу NightmaR Программирование и базы данных 1 25-05-2011 21:10
C/C++ - ПОМОГИТЕ РЕШИТЬ ЗАДАЧУ НА С++ delfi Программирование и базы данных 1 12-05-2011 20:19
помогите решить задачу snikers Программирование и базы данных 2 27-08-2004 01:57
помогите решить задачу Guest Программирование и базы данных 2 21-05-2004 11:23




 
Переход