Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Axiles1305
0 / 0 / 0
Регистрация: 21.07.2011
Сообщений: 20
#1

Ромб. Что не так написал? - C++

11.09.2011, 12:13. Просмотров 1358. Ответов 16
Метки нет (Все метки)

Что не так написал?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <conio.h>
#include <windows.h>
using namespace std;
void main()
{
     setlocale(LC_ALL, "RUS");
int a;
int b;
cout<<"Введите а:";
    cin>>a;
    b=(2*a)-1;
 
for (int d=0;d<a;d++){
    
for(int j=0;j<b;j++)
 
    if (j>=(a-d) && j<=(a+d))
             
    cout<<"*";
    else
     cout<<" ";
cout<<"\n";
 
}
 
for (int d=0;d<b;d++){
    
for(int j=0;j<b;j++)
 
    if (j>=d && j<(b-d))
             
    cout<<"*";
    else
     cout<<" ";
 
cout<<"\n";
}
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.09.2011, 12:13     Ромб. Что не так написал?
Посмотрите здесь:

Написал программу для решения квадратного уравнения, но что то пошло не так - C++
Написал программу по решению квадратного уравнения но я когда записываю коффиценты &quot;Vvedite kofficent a 0 Vvedite kofficent b 2 ...

Написал но не уверен что правильно - C++
1. Написать программу на Си для вычисления значений функции y (рис. 1) если Х изменяться от Xmin до Xmax с шагом dx. Х , Xmin, Xmax, dx...

Нарисовать ромб через цикл,почти сделал,не могу понять что делать дальше - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; using namespace std; int main() { int N,i; N=10; for...

Написал игру 2048 что посоветуете глядя на код ? - C++
Я начинающий, еще многого не знаю, какие будут рекомендации в плане что мне следует изучить или по синтаксису. Планировал сделать с...

Обратная польская запись.Написал программу по алгоритму.Нужно кое-что изменить - C++
Преподаватель дал мне &quot;алгоритм&quot; и сказал написать программу по этому алгоритму. &quot;Алгоритм&quot;:Нам понадобится стек для переменных типа...

Написал программу, но она что-то не совсем то, выдает, не могу понять в чем проблема - C++
При х=3, y= -6 после выполнения фрагмента алгоритма 1. если y&lt;x, то y=y+x 2.если y&lt;0, то y=-y 3. если x&lt;0, то a=x*2 иначе...

Начал писать прогу чтобы текст передвигался по экрану, я что то написал но у меня ошибок куча, подскажите пожалуйстаа :) - C++
Задача такова: У меня есть слово &quot;PRIVET&quot; текст должен пройти от начала и до конца экрана и так он должен проходить бесконечно, тоесть...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Чистый
Автор FAQ
2692 / 1388 / 71
Регистрация: 08.09.2011
Сообщений: 3,720
Записей в блоге: 1
11.09.2011, 12:28     Ромб. Что не так написал? #2
а что должно получиться? Воспользуйтесь тегами для вставки кода...
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
11.09.2011, 12:29     Ромб. Что не так написал? #3
Цитата Сообщение от Axiles1305 Посмотреть сообщение
void main()
int main()
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
11.09.2011, 12:33     Ромб. Что не так написал? #4
Цитата Сообщение от Axiles1305 Посмотреть сообщение
Что не так написал?
Вы хоть озвучили бы задачу или в чем проблема. Я вот тоже напишу, что не так написал: 2+2=0?

Добавлено через 1 минуту
А просто надо было пояснить, что это сложение в кольце вычетов http://www.cyberforum.ru/cgi-bin/latex.cgi?Z_4, поэтому 2+2=0.
Надо четко формулировать вопрос
Axiles1305
0 / 0 / 0
Регистрация: 21.07.2011
Сообщений: 20
11.09.2011, 12:41  [ТС]     Ромб. Что не так написал? #5
Цитата Сообщение от Thinker Посмотреть сообщение
Вы хоть озвучили бы задачу или в чем проблема. Я вот тоже напишу, что не так написал: 2+2=0?

Добавлено через 1 минуту
А просто надо было пояснить, что это сложение в кольце вычетов http://www.cyberforum.ru/cgi-bin/latex.cgi?Z_4, поэтому 2+2=0.
Надо четко формулировать вопрос
получается ромб, но кривой не много.В низ выводится нормально, а с верху почему то нет

Добавлено через 1 минуту
Цитата Сообщение от ITZver Посмотреть сообщение
int main()
int main не поможет
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
11.09.2011, 12:46     Ромб. Что не так написал? #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
 using namespace std;
 
int main()
 {
 setlocale(LC_ALL, "RUS");
 int a;
 int b;
 
 cout<<"Введите a: ";
 cin>>a;
 b=(2*a)-1;
 
 for (int d=0; d<a; d++){
 
    for(int j=1; j<=b; j++)
 
       if (j>=(a-d+1) &&  j <=(a+d-1))
 
           cout<<"*";
        else
           cout<<" ";
           cout<<"\n";
 }
 for (int d=0; d<b; d++){
 
     for(int j=0; j<b; j++)
 
         if (j>=d && j<(b-d))
 
            cout<<"*";
        else
            cout<<" ";
 
  cout<<"\n";
 }
 }
-=ЮрА=-
Заблокирован
Автор FAQ
11.09.2011, 13:01     Ромб. Что не так написал? #7
Цитата Сообщение от Axiles1305 Посмотреть сообщение
Что не так написал?
Вот подправил твой код,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
void main()
{
    int a;
    int b;
    int d,j;
    cout<<"Enter a:";
    cin>>a;
    b=(2*a) - 1;
 
    for (d=0;d < a;d++)
    {
        for(j=0;j<=b;j++)
        if (j>=(a-d) && j<=(a+d))
            cout<<"*";
        else
            cout<<" ";
        cout<<"\n";
    }
 
    for (d=1;d<b;d++)
    {
        cout<<" ";
        for(j=0;j<=b;j++)
        if (j>=d && j<(b-d))
            cout<<"*";
        else
            cout<<" ";
        cout<<"\n";
    }
    getch();
}
На мой взгляд тяжеловесные условия
C++
1
if (j>=(a-d) && j<=(a+d))
, можно проще + всё в 2-х циклах надо делать
Изображения
 
-=ЮрА=-
Заблокирован
Автор FAQ
11.09.2011, 13:06     Ромб. Что не так написал? #8
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
можно проще + всё в 2-х циклах надо делать
Как и здесь Помогите плиз, как вывести это чудо на экран?
ромб разваем на 4-ри прямоугольных треугольника и их рисуем, так легче делань чем такие конструкции делать
C++
1
if (j>=(a-d) && j<=(a+d)) if (j>=d && j<(b-d))
res
56 / 9 / 1
Регистрация: 05.04.2010
Сообщений: 143
11.09.2011, 13:09     Ромб. Что не так написал? #9
Цитата Сообщение от ITZver Посмотреть сообщение
int main()
А вот ты перевёл на integer, а вот return в конце забыл.
Умник, такой умник /facepalm.
Какая разница то , а main вообще не должна возвращать что то.
-=ЮрА=-
Заблокирован
Автор FAQ
11.09.2011, 13:10     Ромб. Что не так написал? #10
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
for (d=1;d<b;d++)
* * * * {
* * * * * * * * cout<<" ";
вкратце об этом, в первых 2-х for уже выведена половина ромба - его основание - малая диагональ, если начнёмс неё вывод получим 2-ную диагональ, вобщем чтото типа этого

---*
--***
--***
---*

Поэтому малую диагональ выводить уже нет необходимости, начинаем со следующей строки d=1, однако это приведёт к сдвигу в пробелах вначале строки поэтому ввожу дополнительный вывод пробела cout<<" ";
diagon
Higher
1927 / 1193 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
11.09.2011, 13:11     Ромб. Что не так написал? #11
Цитата Сообщение от res Посмотреть сообщение
А вот ты перевёл на integer, а вот return в конце забыл.
Умник, такой умник /facepalm.
Какая разница то , а main вообще не должна возвращать что то.
По стандарту main обязан возвращать int, и по стандарту же необязательно писать return.
gcc, к примеру, void main() вообще не компилирует, т.к. фактически это грубая ошибка.
Dani
1278 / 636 / 56
Регистрация: 11.08.2011
Сообщений: 2,277
Записей в блоге: 2
Завершенные тесты: 1
11.09.2011, 13:14     Ромб. Что не так написал? #12
в видовс может и не возвращать, ничего не будет. в других системах если возвращать ненулевой код, будет реакция.

Добавлено через 38 секунд
Цитата Сообщение от diagon Посмотреть сообщение
а вот return в конце забыл.
можно и не возвращать

Добавлено через 1 минуту
у страуструпа написано, что последняя строка main равноправна return
-=ЮрА=-
Заблокирован
Автор FAQ
11.09.2011, 13:16     Ромб. Что не так написал? #13
Цитата Сообщение от res Посмотреть сообщение
А вот ты перевёл на integer, а вот return в конце забыл.
- старые компиляторы на это да ругаются, но как отметил diagon,
Цитата Сообщение от diagon Посмотреть сообщение
По стандарту main обязан возвращать int, и по стандарту же необязательно писать return.
- это суровые реалии жизниХотя мне для себя не понятно, зачем же было в стандарте дефалтно опускать возврат, подраумевая что в норм случае мэйн нолик вернёт, а в случае ошибки возврат будет из середины тела мэйна, имхо void main аналогично работает
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
11.09.2011, 13:20     Ромб. Что не так написал? #14

Не по теме:

res, "Мы совершаем ошибки, мы все это делаем..."



Добавлено через 1 минуту
diagon, спасибо за разъяснение
Даже сам не знал. Просто, как помню, компилятор всегда ругался. Да вроде, как, и принято писать int.
res
56 / 9 / 1
Регистрация: 05.04.2010
Сообщений: 143
11.09.2011, 13:58     Ромб. Что не так написал? #15
Цитата Сообщение от diagon Посмотреть сообщение
По стандарту main обязан возвращать int, и по стандарту же необязательно писать return.
gcc, к примеру, void main() вообще не компилирует, т.к. фактически это грубая ошибка.
По стандарту main возвращает что то? Это же бессмысленно.

К примеру, компилятор который написал мой знакомый, возвращает даже конструктор.
to code monkeys
внимание, сраказм.
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
11.09.2011, 14:03     Ромб. Что не так написал? #16
Цитата Сообщение от res Посмотреть сообщение
По стандарту main возвращает что то?
А вы разве не знали? main возвращает число для вызывающего процесса.

Не по теме:

Как вы могли такое упустить...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.09.2011, 14:04     Ромб. Что не так написал?
Еще ссылки по теме:

Что не так? - C++
std::istream&amp; operator&gt;&gt; (std::istream&amp; input, Crypta&amp; crypta) { std::cout&lt;&lt;&quot;Enter a full way of the file - &quot;; crypta.file_ =...

Что не так? - C++
Помогите пожалуйста задание в документе вот код что в нём не так? #include&lt;iostream&gt; #include&lt;math.h&gt; #include&lt;iomanip&gt; ...

что-то не так - C++
Нужно сделать программу возвращающую произведение n последних элементов массива. Вот программа,но она почеу то возвращает n первых...

что не так? - C++
Дано вещественное число А&gt;0. Найти среди чисел 1, 1+1/2, 1+1/2+1/3... первое же число, большее A. #include&lt;stdio.h&gt; ...

что не так? - C++
/*задано масcив цеых чисел,создать новый массив который состоит с елементов первого массива и встречаеться всего один раз . получить...


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

Или воспользуйтесь поиском по форуму:
diagon
Higher
1927 / 1193 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
11.09.2011, 14:04     Ромб. Что не так написал? #17
Цитата Сообщение от res Посмотреть сообщение
По стандарту main возвращает что то? Это же бессмысленно.
Ну так претензии к стандарту, не?
Никто заставляет вас писать int main(). Такой код всего-лишь не будет компилироваться на половине компиляторов, включая gcc. Но если для вас это не проблема - пишите как хотите.
Yandex
Объявления
11.09.2011, 14:04     Ромб. Что не так написал?
Ответ Создать тему
Опции темы

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