Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 05.06.2013
Сообщений: 10

Конкурс! Написать программу из десяти циклов.

17.10.2013, 11:25. Показов 3860. Ответов 45
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Напишите плиз любую полезную программу на с++, из 10 циклов желательно,ато идея никак не приходит про что писать(((Заранее ОГРОМНОЕ СПАСИБО!!!!!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.10.2013, 11:25
Ответы с готовыми решениями:

Написать программу из циклов
Условие: Вводится последовательность из n целых чисел. Определить количество элементов в наиболее длинной подпоследовательности подряд...

Написать программу с использованием циклов
Вычислить сумму 12 членов рекуррентной последовательности(вложения) Для решения задачи описать рекурсивную функцию, а также составить...

Написать программу, которая выводит таблицу квадратов первых десяти целых положительных чисел
Ребят, выручайте) Написать программу, которая выводит таблицу квадратов первых десяти целых положительных чисел: числа квадрат 1...

45
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
17.10.2013, 17:49
Студворк — интернет-сервис помощи студентам
SatanaXIII, и в чем противоречие? Могу упростить до ровно 10 циклов. Вы это хотели? Или 10 вложенных друг в друга?
0
54 / 54 / 37
Регистрация: 05.09.2013
Сообщений: 1,864
17.10.2013, 17:54
Только 10 циклов(последовательно или вложенных или любая их комбинация). Все операторы ВНУТРИ циклов. Функция main() не возвращает значение. Ну, как я понял.
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
17.10.2013, 17:58
Все внутри одного большого цикла:
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <conio.h>
 
int main()
{
    // 1 loop
    for (char ch='z'; ch != '0';)
    {
        int **A = NULL, **B = NULL, **C = NULL; // матрицы
        int M = 0, N = 0;                       // размеры матриц
        system("cls");
        std::cout << "What do you want?\n"
                     "1. Enter the matrices\n"
                     "2. Read the matrices from file\n"
                     "3. Calculate the amount of matrices\n"
                     "0. Exit\n"
                     "You choise: ";
        std::cin >> ch;
 
        switch(ch - '0')
        {
            case 1:
            {
                system("cls");
                // 2 loop
                do
                {
                    std::cout << "Enter number of columns: ";
                    std::cin >> M;
                    if (M < 1)
                    {
                        std::cout << "Incorrect value\nNumber must be > 1\n\a";
                        _getch();
                    }
                } while (M < 1);
                // 3 loop
                do
                {
                    std::cout << "Enter number of rows: ";
                    std::cin >> N;
                    if (N < 1)
                    {
                        std::cout << "Incorrect value\nNumber must be > 1\n\a";
                        _getch();
                    }
                } while (N < 1);
 
                A = new int*[M];
                std::cout << "\nEnter first matrix:\n";
                // 4 loop
                for (int i=0; i < M; i++)
                {
                    A[i] = new int[N];
                    // 5 loop
                    for (int j=0; j < N; j++)
                        std::cin >> A[i][j];
                }
 
                B = new int*[M];
                std::cout << "\nEnter second matrix:\n";
                // 6 loop
                for (int i=0; i < M; i++)
                {
                    B[i] = new int[N];
                    // 7 loop
                    for (int j=0; j < N; j++)
                        std::cin >> B[i][j];
                }
 
                break;
            } // end of case 1
 
            case 2:
            {
                std::ifstream ifs("input.txt");
                if (!ifs)
                {
                    std::cout << "No such file\n";
                    _getch();
                }
                else
                {
                    ifs >> M >> N;
                    if (M < 1 || N < 1)
                    {
                        std::cout << "Invalid file\n\a";
                        ifs.close();
                        _getch();
                        break;
                    }
                    // 8 loop
                    A = new int*[M];
                    for (int i=0; i < M; i++)
                    {
                        A[i] = new int[N];
                        // 9 loop
                        for (int j=0; j < N && !ifs.eof(); j++)
                            ifs >> A[i][j];
                    }
                    // 10 loop
                    B = new int*[M];
                    for (int i=0; i < M; i++)
                    {
                        B[i] = new int[N];
                        // 11 loop
                        for (int j=0; j < N && !ifs.eof(); j++)
                            ifs >> B[i][j];
                    }
                    ifs.close();
                }
                break;
            } // end of case 2
 
            case 3:
            {
                if (M == 0 || N == 0)
                {
                    std::cout << "You must fill matrices at first\n";
                    _getch();
                    break;
                }
 
                system("cls");
                // выводим матрицы
                std::cout << "First matrix:\n";
                // 12 loop
                for (int i=0; i < M; i++)
                {
                    // 13 loop
                    for (int j=0; j < N; j++)
                        std::cout << A[i][j] << " ";
                    std::cout << std::endl;
                }
                std::cout << "\nSecond matrix:\n";
                // 14 loop
                for (int i=0; i < M; i++)
                {
                    // 15 loop
                    for (int j=0; j < N; j++)
                        std::cout << B[i][j] << " ";
                    std::cout << std::endl;
                }
 
                std::cout << "\nResult matrix:\n";
                C = new int*[M];
                // 16 loop
                for (int i=0; i < M; i++)
                {
                    C[i] = new int[N];
                    // 17 loop
                    for (int j=0; j < N; j++)
                    {
                        C[i][j] = A[i][j] + B[i][j];
                        std::cout << C[i][j] << " ";
                    }
                    std::cout << std::endl;
                }
                _getch();
                break;
            } // end of case 3
 
            case 0:
            {
                // 18 loop
                for (int i=0; i < M; i++)
                {
                    if (A[i]) delete[] A[i];
                    if (B[i]) delete[] B[i];
                }
                if (A) delete[] A;
                if (B) delete[] B;
 
                if (C)
                {
                    char wch;
                    std::cout <<
                        "Would you like to write results in file? (y/n)\n";
                    // 19 loop
                    do
                    {
                        std::cin >> wch;
                        if (wch != 'y' && wch != 'n')
                            std::cout << "Error, expected 'y' or 'n'\n\a"
                                         "Try again: ";
                    } while (wch != 'y' && wch != 'n');
 
                    if (wch == 'y')
                    {
                        std::ofstream o("output.txt");
                        // 20 loop
                        for (int i=0; i < M; i++)
                        {
                            //21 loop
                            for (int j=0; j < N; j++)
                                o << C[i][j] << " ";
                            o << std::endl;
                        }
                        o.close();
                    }
 
                    // 22 loop
                    for (int i=0; i < M; i++)
                        delete[] C[i];
                    delete[] C;
                }
                break;
            } // end of case 0
 
            default:
            {
                std::cout << "Incorrect value\a\n";
                _getch();
                break;
            }
        } // end of switch(ch - '0')
    } // main loop
}
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
17.10.2013, 18:17
Цитата Сообщение от MrGluck Посмотреть сообщение
Могу упростить до ровно 10 циклов. Вы это хотели? Или 10 вложенных друг в друга?
Ровно десять. Не больше, не меньше.

 Комментарий модератора 
Смысл в том, чтобы как можно более запутанно использовать эти десять циклов. Сама же программа должна быть максимально простой. Не надо извращаться в каких-нибудь указателях на указатель на указатель, или лямбда функциях, или еще в чем-то таком. Если есть необходимость - пожалуйста, но упор на этом делать не стоит. Суть в том, кто сможет придумать наиболее мозговыносящую структуру из циклов. Связку, неожиданное использование. Не книжные знания применить - творчество. Любой новичек может почти на равных выступить.



Цитата Сообщение от FiLF Посмотреть сообщение
Функция main() не возвращает значение.
Все она возвращает.
0
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
17.10.2013, 18:20
Цитата Сообщение от FiLF Посмотреть сообщение
Функция main() не возвращает значение.
она должна возвращать значение, это необходимо если сторонний процесс запускает ваш, и хочет узнать результат выполнения всей программы
(например если записать какую то программу в pre или post-build event в той же MSVS - она откажется билдить проект если результат выполнения программы (return от main) меньше 0)
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
17.10.2013, 18:25

Не по теме:

У меня кстати в программе ошибка, она не рассчитана на повторный ввод матриц



Добавлено через 1 минуту
Теперь понял условия, сейчас погуляю со своей сучкой, как прийду - кастрирую прогу и выложу результат

Добавлено через 2 минуты
Мб стоит все-таки полностью исключить С++11 или хотя-бы л-функции, я ведь могу их и внутри цикла вставить.
Как насчет передачи параметров программе с консоли?
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
17.10.2013, 18:30
Цитата Сообщение от MrGluck Посмотреть сообщение
Мб стоит все-таки полностью исключить С++11 или хотя-бы л-функции, я ведь могу их и внутри цикла вставить.
Да не, пусть будет можно. Но не приветствуется.
Цитата Сообщение от MrGluck Посмотреть сообщение
Как насчет передачи параметров программе с консоли?
Конечно. Не возбраняется.
0
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
17.10.2013, 18:31
Цитата Сообщение от SatanaXIII Посмотреть сообщение
м-то таком. Если есть необходимость - пожалуйста, но упор на этом делать не стоит. Суть в том, кто сможет придумать наиболее мозговыносящую структуру из циклов. Связку, неожиданное использование.
могу предложить сумму элементов 10-и размерного массива
только зачем такой массив нужен, представить не могу
0
54 / 54 / 37
Регистрация: 05.09.2013
Сообщений: 1,864
17.10.2013, 18:31
Цитата Сообщение от Raali Посмотреть сообщение
она должна возвращать значение, это необходимо если сторонний процесс запускает ваш, и хочет узнать результат выполнения всей программы
(например если записать какую то программу в pre или post-build event в той же MSVS - она откажется билдить проект если результат выполнения программы (return от main) меньше 0)
Я о том, что оператор return 0; в конце можно опустить. Или объявить main с типом возвращаемого значения void. А дела компилятора тут не при чём.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
17.10.2013, 18:40
Цитата Сообщение от ValeryS Посмотреть сообщение
могу предложить сумму элементов 10-и размерного массива
только зачем такой массив нужен, представить не могу
Ну я бы лично ради спортивного интереса даже с удовольствием поглядел.
0
погромист
 Аватар для coloc
415 / 251 / 30
Регистрация: 27.08.2012
Сообщений: 550
17.10.2013, 18:59
SatanaXIII,
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <ctime>
 
enum { cell = 0, wall };
 
int main() {
    srand(time(NULL));
    bool running = true;
    bool keys[255] = { false };
    const int s = 20;
    int x = 0;
    int y = 0;
    
    int map[s][s] = { 0 };
    
    for(int i = 0; i < s; i++) {
        for(int j = 0; j < s; j++) {
            int val = rand() % 2;
            if(val == wall)
                val = rand() % 2;
            map[j][i] = val;
        }
    }
    
    while(running) {
        system("cls");
        for(int i = 0; i < s; i++) {
            for(int j = 0; j < s; j++) {
                if(j == x && i == y) {
                    std::cout << "@ ";
                    continue;
                }
                std::cout << (map[j][i] == cell ? "." : "#") << " ";
            }
            std::cout << std::endl;
        }
        
        while(!kbhit()) {
            for(int i = 0; i < 255; i++)
                keys[i] = false;
        }   
        
        keys[getch()] = true;
            
        for(int i = 0; i < 255; i++) {
            if(keys[i]) {
                int old_x = x;
                int old_y = y;
                if(i == 'w')
                    y--;
                if(i == 's')
                    y++;
                if(i == 'a')
                    x--;
                if(i == 'd')
                    x++;
                
                
                for(int k = 0; k < s; k++) {
                    for(int f = 0; f < s; f++) {
                        if(map[f][k] == wall && x == f && y == k) {
                            x = old_x;
                            y = old_y;
                        }
                            
                        if(x < 0 || x >= s - 1)
                            x = old_x;
                            
                        if(y < 0 || y >= s - 1)
                            y = old_y;
                    }
                }
            }
        }
    }
    
    return 0;
}
Простенькая игрушка в 10 циклов
0
Модератор
Эксперт по электронике
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
17.10.2013, 19:06
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
#include "stdafx.h"
#include <conio.h> 
 
int arr[2][2][2][2][2][2][2][2][2][2]={
    0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
};
 
int _tmain(int argc, _TCHAR* argv[])
{
for(int a=0;a<2;a++)
{
    for(int b=0;b<2;b++)
      for(int c=0;c<2;c++)
        for(int d=0;d<2;d++)
            for(int e=0;e<2;e++)
                for(int f=0;f<2;f++)
                    for( int g=0;g<2;g++)
                        for(int h=0;h<2;h++)
                            for(int i=0;i<2;i++)
                                for(int j=0;j<2;j++)
                                    arr[0][0][0][0][0][0][0][0][0][0]+=arr[a][b][c][d][e][f][g][h][i][j];
    
    
  if(a==1)
  {
      printf("summ=%d",arr[0][0][0][0][0][0][0][0][0][0]);
      getch();
      return 0;
  
  } 
}   
    
}
в первом элементе массива сумма
если не нравится инициализация массива можно вводить данные в цикле
размер взял поменьше чтобы не засорять экран

Добавлено через 58 секунд
coloc,
main должен быть чистым , весь код в циклах
0
17.10.2013, 19:15

Не по теме:

нашел тут интересную программу. Немножко не в тему, но посмотреть на ее результат будет интересно

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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# /* [  <!-- */ include  <stdio.h> /*   \
  #{\
`""""true \\#{"\n#"};           \
  \
if [ -n "$ZSH_VERSION" ]; then           \
  \
  echo exec  echo I\'m a zsh script.; \
  \
elif [ -n "$BASH_VERSION" ]; then        \
  \
  echo exec  echo I\'m a bash script.; \
else  \
  echo exec  echo  I\'m  a sh  script.;    \
fi`;  #\
BEGIN{print"I'm a ", 0 ? "Ruby"  :"Perl",  " program.\n";  exit; } 
  #\
%q~            
  
set dummy =0; puts[list "I'm"  "a"  "tcl"  "script."]; exit   
  
all: ; @echo "I'm a Makefile."          \
  #*/
/*: */ enum {a, b};            \
  \
static int c99(void) {         
  
#ifndef __cplusplus /* bah */        
  
unused1: if ((enum {b, a})0)          \
  (void)0;
#endif           
  
unused2:  return a;     \
}  \
static int trigraphs(void) {         \
  \
  return sizeof  "??!"  ==  2;    \
}  \
char X;               \
  \
int main(void) {             \
  \
  struct X  {        \
  \
     char  a[2];    \
  };\
  if (sizeof(X)  !=  1) {       \
  \
printf("I'm a C++ program (trigraphs %sabled).\n",         \
  \
   trigraphs()  ? "en"  : "dis");\
  \
}else if (1//**/2
 
 
)unused3 : { ; \
    printf("I'm a C program (C%s, trigraphs %sabled).\n", \
        c99() ? "89 with // comments" : "99", \
        trigraphs() ? "en" : "dis"); \
  } else { \
    printf("I'm a C program (C89, trigraphs %sabled).\n", \
        trigraphs() ? "en" : "dis"); \
  } \
  return 0; \
} /*
# \
> main :: IO () -- -- \
> main = putStr "I'm a Literate Haskell program.\n"
# \
]>++++++++[<+++++++++>-]<+.>>++++[<++++++++++>-]<-.[-]>++++++++++ \
[<+++++++++++>-]<-.>>++++[<++++++++>-]<.>>++++++++++[<++++++++++> \
-]<- - -.<.>+.->>++++++++++[<+++++++++++>-]<++++.<.>>>++++++++++[ \
<++++++++++>-]<+++++.<<<<+.->>>>- - -.<+++.- - -<++.- ->>>>>+++++ \
+++++[<+++++++++++>-]<- - -.<<<<<.<+++.>>>.<<<-.- ->>>>+.<.<.<<.> \
++++++++++++++.[-]++++++++++"""`
# \
print "I'm a Python program."; """[-][--><html><head>
<!--:--><title>I'm a HTML page</title></head><body>
<!--:--><h1>I'm a <marquee><blink>horrible HTML</blink></marquee> page</h1>
<!--:--><script language="Javascript">
<!--: # \
setTimeout( // \
  function () { // \
   document.body.innerHTML = "<h1>I'm a javascript-generated HTML page</h1>"; // \
  }, 10000); // \
//-->
</script><!--: \
</body></html><!-- } # \
say "I'm a Perl6 program", try { " ($?PUGS_VERSION)" } // "", "."; # """ # */
#define FOO ]-->~

1
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
17.10.2013, 19:37
coloc, это с конкурса по самому запутанному коду. Я вот здесь ссылки приводил: Самый хитрый код (Несерьезная тема)
1
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
17.10.2013, 19:41
Вот с 10 циклами:
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <conio.h>
#define M 4
#define N 3
 
int main()
{
    // 1 loop
    for (int ch=-1, filled=0, calculated=0; ch != 0;)
    {
        int A[M][N], B[M][N], C[M][N]; // матрицы
        system("cls");
        std::cout << "What do you want?\n"
                     "1. Enter the matrices\n"
                     "2. Calculate the amount of matrices\n"
                     "0. Exit\n"
                     "You choise: ";
        std::cin >> ch;
 
        switch(ch)
        {
            case 1:
            {
                system("cls");
                std::cout << "Enter first matrix:\n";
                // 2 loop
                for (int i=0; i < M; i++)
                {
                    // 3 loop
                    for (int j=0; j < N; j++)
                        std::cin >> A[i][j];
                }
 
                std::cout << "\nEnter second matrix:\n";
                // 4 loop
                for (int i=0; i < M; i++)
                {
                    // 5 loop
                    for (int j=0; j < N; j++)
                        std::cin >> B[i][j];
                }
                filled = 1;
                break;
            }
 
            case 2:
            {
                if (!filled)
                {
                    std::cout << "You must fill matrices at first\n";
                    _getch();
                    break;
                }
                std::cout << "\nResult matrix:\n";
                // 6 loop
                for (int i=0; i < M; i++)
                {
                    // 7 loop
                    for (int j=0; j < N; j++)
                    {
                        C[i][j] = A[i][j] + B[i][j];
                        std::cout << C[i][j] << " ";
                    }
                    std::cout << std::endl;
                }
                calculated = 1;
                _getch();
                break;
            } // end of case 2
 
            case 0:
            {
                if (calculated)
                {
                    char wch;
                    std::cout << "Would you like to write result in file? (y/n)\n";
                    // 8 loop
                    do
                    {
                        std::cin >> wch;
                        if (wch != 'y' && wch != 'n')
                            std::cout << "Error, expected 'y' or 'n'\n\a"
                                         "Try again: ";
                    } while (wch != 'y' && wch != 'n');
 
                    if (wch == 'y')
                    {
                        std::ofstream o("output.txt");
                        // 9 loop
                        for (int i=0; i < M; i++)
                        {
                            // 10 loop
                            for (int j=0; j < N; j++)
                                o << C[i][j] << " ";
                            o << std::endl;
                        }
                        o.close();
                    }
                }
                break;
            } // end of case 0
 
            default:
            {
                std::cout << "Incorrect value\a\n";
                _getch();
                break;
            }
        } // end of switch(ch)
    } // main loop
}
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
17.10.2013, 19:47
Ииии у нас наметился лидер! По крайней мере это единственная задача, удовлетворяющая условию.
0
52 / 52 / 14
Регистрация: 06.02.2013
Сообщений: 155
18.10.2013, 11:59
SatanaXIII,
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
#include <stdio.h>
#include <math.h>
 
int main()
{
    for(bool exit = false; !exit; exit = true, putchar('\n'))
    {
        for(double a; !exit && scanf("%lf", &a) && a!=0; exit = true)
        {
            for(double b; !exit && scanf("%lf", &b); exit = true)
            {
                for(double c; !exit && scanf("%lf", &c); exit = true)
                {
                    for(char s; !exit && scanf("%*c%c", &s) && (a<0? a*=-1, b*=-1, c*=-1, s=(s=='<'? '>': s=='{'? '}': s=='='? '=': s=='}'?'{':s=='>'?'<':s): a); exit = true)
                    {
                        for(;!exit && s=='<' && ((b*b-4*a*c > 0)? printf("(%f; %f)", ((-b-sqrt(b*b-4*a*c))/(2*a)), ((-b+sqrt(b*b-4*a*c))/(2*a))): printf("{}")); exit = true);
                        for(;!exit && s=='{' && ((b*b-4*a*c > 0)? printf("[%f; %f]", ((-b-sqrt(b*b-4*a*c))/(2*a)), ((-b+sqrt(b*b-4*a*c))/(2*a))): (b*b-4*a*c == 0)? printf("{%lf}", -b/(2*a)): printf("{}")); exit = true);
                        for(;!exit && s=='=' && ((b*b-4*a*c > 0)? printf("{%lf; %lf}", ((-b-sqrt(b*b-4*a*c))/(2*a)), ((-b+sqrt(b*b-4*a*c))/(2*a))): (b*b-4*a*c == 0)? printf("{%lf}", -b/(2*a)): printf("{}")); exit = true);
                        for(;!exit && s=='}' && ((b*b-4*a*c > 0)? printf("(-inf; %lf]U[%lf; +inf)", ((-b-sqrt(b*b-4*a*c))/(2*a)), ((-b+sqrt(b*b-4*a*c))/(2*a))): printf("(-inf; +inf)")); exit = true);
                        for(;!exit && s=='>' && ((b*b-4*a*c > 0)? printf("(-inf; %lf)U(%lf; +inf)", ((-b-sqrt(b*b-4*a*c))/(2*a)), ((-b+sqrt(b*b-4*a*c))/(2*a))): (b*b-4*a*c == 0)? printf("(-inf; %lf)U(%lf; +inf)", -b/(2*a), -b/(2*a)): printf("(-inf; +inf)")); exit = true);
                    }
 
                }
            }
        }
    }
}
Вычисляет корни квадратного неравенства.

'}' — больше либо равно,
'{' — меньше либо равно.

Примеры

Code
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
$ ./10loops
-3
4
-5
{
(-inf; +inf)
 
$ ./10loops
1
-6
5
}
(-inf; 1.000000]U[5.000000; +inf)
 
$ ./10loops
-1
-2
8
>
(-4.000000; 2.000000)
 
$ ./10loops
-1
6
-5
<
(-inf; 1.000000)U(5.000000; +inf)
 
./10loops 
2
-9
4
=
{0.500000; 4.000000}
1
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
18.10.2013, 12:22
rublag, да, программа полностью подходит под условия. За исключением одной маленькой детали - я дольше открывал википедию, чтобы вспомнить, что такое квадратное неравенство, чем разгадывал хитросплетение циклов. Х) А так все хорошо.

И кстати, MrGluck, rublag, а где return-то? Был бы void main я бы еще понял. Но все равно не гоже.
Вот такой, к примеру, пример от меня (использовать в дальнейшем нельзя ), реализующий концепцию кромецикловой чистоты main, но читерски бессмысленнейшим образом использующий цикл:
C++
1
2
3
4
5
6
7
8
int main()
{
...
while(true)
  {
  return 0;
  }
}
Никакой компилятор не ругнется.
0
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
18.10.2013, 13:10
Цитата Сообщение от SatanaXIII Посмотреть сообщение
И кстати, MrGluck, rublag, а где return-то? Был бы void main я бы еще понял. Но все равно не гоже.
Стыдно не знать
3.6.1 Main function
5. ... If control reaches the end
of main without encountering a return statement, the effect is that of executing
return 0;
И про void main там же
2. An implementation shall not predefine the main function. This function shall not be overloaded. It shall
have a return type of type int, but otherwise its type is implementation-defined. ...
Видимо кроме студии вы ничего не пробовали.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
18.10.2013, 13:23
MrGluck, просто я плохо запоминаю текст.
Цитата Сообщение от MrGluck Посмотреть сообщение
Видимо кроме студии вы ничего не пробовали.
Дааа. Студии.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.10.2013, 13:23

Написать программу, которая выводит таблицу квадратов первых десяти целых положительных чисел
Написать программу, которая выводит таблицу квадратов первых десяти целых положительных чисел.

Конкурс для программистов - 3^n, димеры и статистика циклов
Предлагаю принять участие в моём новом конкурсе для программистов-математиков. На этот раз выбраны три относительно простые, но...

Написать программу для ввода десяти элементов
Народ выручайте. Написать программу в которой нужно ввести 10 чисел. Должен выводится min из этих элементов. И max из этих элементов. И...

Написать программу с использованием циклов на VB
В простую переменную последовательно вводятся н чисел. все ли числа меньше заданного числа к? Помогите с кодом с использованием циклов:)

Написать программу, которая выводит таблицу квадратов первых десяти положительных чисел.
Написать программу, которая выводит таблицу квадратов первых десяти положительных чисел.


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Сезонность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru