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

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

Войти
Регистрация
Восстановить пароль
 
therealtip
1 / 1 / 0
Регистрация: 29.05.2014
Сообщений: 36
#1

Не понимаю, что не так, почему не работает - C++

29.05.2014, 21:53. Просмотров 386. Ответов 11
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<cstdlib>
#include <stdio.h>
#include <conio.h>
#include "iostream"
using namespace std;
void main()
{int *a,i,N;
 cout<<"Vvedite chetnoe chislo: ";
 cin>>N;
 a = new int[N];
 for ( int i=0;i<N;i++) a[i] = 0 + rand()%5;
 if a[i]!=a[i+N/2] break;
     if (i==N/2) cout<<"Polovini sovpali"; 
     else cout<< " polovini ne sovpali";
 cout << endl;
 getch();
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2014, 21:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не понимаю, что не так, почему не работает (C++):

Почему код не работает хотя ошибок нет? Что-то не так с выделением памяти? - C++
#include &lt;math.h&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; int n = 0; double a, b; ...

Не понимаю,что не так в коде - C++
Всем здрасте! Столкнулся со следующей проблемой. На ранних этапах изучения C++ сам себе придумываю задачки,т.к. в книжке по которой...

Туплю не понимаю почему не работает - C++
Массив должен заполняться рандомными значениями, но при запуске прога зависает. // ConsoleApplication1.cpp : Defines the entry point for...

Не понимаю, почему не работает стандартная функция strlen - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &quot;string.h&quot; using namespace std; int _tmain(int argc, _TCHAR* argv) { ...

R6010 - не понимаю, почему и что VS2010 хочет - C++
Разработать класс String: конструктор по умолчанию, позволяющий вводить строку 80 символов; конструктор, позволяющий вводить строку...

Почему так работает, а так нет? - C++
так работает // Возведение b в степень s по модулю m float powmod(float b, long s) { float c=1; while (s) {

11
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
29.05.2014, 21:57 #2
Цитата Сообщение от therealtip Посмотреть сообщение
if a[i]!=a[i+N/2] break;
этот break к чему относится?
1
nmcf
5324 / 4644 / 1553
Регистрация: 14.04.2014
Сообщений: 18,479
29.05.2014, 21:58 #3
А где второй цикл? В первом заполняешь, во втором сравнение. Да и вывод на экран надо добавить.
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
29.05.2014, 21:59 #4
Цитата Сообщение от therealtip Посмотреть сообщение
a = new int[N];
если есть new обязательно должно быть delete

Добавлено через 1 минуту
Цитата Сообщение от therealtip Посмотреть сообщение
for ( int i=0;i<N;i++)
Цитата Сообщение от therealtip Посмотреть сообщение
int *a,i,
перекрытие имен
1
therealtip
1 / 1 / 0
Регистрация: 29.05.2014
Сообщений: 36
29.05.2014, 22:00  [ТС] #5
Предполагалось, что если какой-либо элемент не будет равен элементу в другой половине массива

Добавлено через 1 минуту
Delete добавлю, а что значит перекрытие имен, прости не понимаю
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
29.05.2014, 22:05 #6
Цитата Сообщение от therealtip Посмотреть сообщение
Предполагалось, что если какой-либо элемент не будет равен элементу в другой половине массива
какого массива
у тебя один цикл
и
Цитата Сообщение от therealtip Посмотреть сообщение
if a[i]!=a[i+N/2] break;
не входит в этот цикл
Цитата Сообщение от therealtip Посмотреть сообщение
а что значит перекрытие имен, прости не понимаю
i объявлена два раза один раз как локальная переменная, другой как счетчик цикла в цикле
и с каким i будет работать эта конструкция
Цитата Сообщение от therealtip Посмотреть сообщение
if (i==N/2)
с локальной. которая нигде не инициализируется и в ней мусор
1
therealtip
1 / 1 / 0
Регистрация: 29.05.2014
Сообщений: 36
29.05.2014, 22:16  [ТС] #7
nmcf, Спасибо, завтра попробую разобраться

Добавлено через 30 секунд
ValeryS, Спасибо, буду пробовать что-нибудь наколдовать
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
29.05.2014, 22:30 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от therealtip Посмотреть сообщение
Спасибо, буду пробовать что-нибудь наколдовать
а че там думать
вот твой код подправленный
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
#include<cstdlib>
 #include <stdio.h>
 #include <conio.h>
 #include "iostream"
 using namespace std;
 void main()
 {int *a,i,N;
 cout<<"Vvedite chetnoe chislo: ";
 cin>>N;
 a = new int[N];
 for (  i=0;i<N;i++) 
       a[i] = rand()%5;
 for ( i=0;i<N/2;i++)
        if (a[i]!=a[i+N/2])
               break;
 if (i==N/2) 
        cout<<"Polovini sovpali"; 
 else 
     cout<< " polovini ne sovpali";
 
 cout << endl;
 delete [] a; 
getch();
 }
потом на досуге разберись
и зачем столько заголовков наподключал?
1
therealtip
1 / 1 / 0
Регистрация: 29.05.2014
Сообщений: 36
29.05.2014, 22:46  [ТС] #9
ValeryS, Даже не знаю, как преподаватель научил так и делал
А тебе я не знаю как спасибо сказать, чтобы ты понял, что очень помог =)
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
29.05.2014, 22:50 #10
Цитата Сообщение от therealtip Посмотреть сообщение
А тебе я не знаю как спасибо сказать, чтобы ты понял, что очень помог
а кнопочку нажми "спасибо"
1
therealtip
1 / 1 / 0
Регистрация: 29.05.2014
Сообщений: 36
29.05.2014, 22:58  [ТС] #11
ValeryS, ValeryS,
Цитата Сообщение от ValeryS Посмотреть сообщение
а кнопочку нажми "спасибо"
не обзывайся на меня нубом, я ее в упор не вижу Где она есть?

Добавлено через 3 минуты
ValeryS, А где она есть? Я найти не могу
0
ValeryS
Модератор
6651 / 5060 / 470
Регистрация: 14.02.2011
Сообщений: 16,918
29.05.2014, 22:58 #12
Цитата Сообщение от therealtip Посмотреть сообщение
я ее в упор не вижу
ну нету так нету
видать тебе еще не дозволено, сообщений мало
потом сочтемся
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2014, 22:58
Привет! Вот еще темы с ответами:

Проверить правильность написания заглавных букв в текстовом файле (не понимаю, почему программа не работает) - C++
Мне необходимо было проверить правильность написания заглавных букв в текстовом файле. Исправить текст и вывести его в новый файл.Помогите,...

Что в коде ни так? while не работает так, как ожидаю - C++
Написанный код, как я думаю, должен выдавать цифры от 0 до 1000, столбиком. Но выдает начиная от 702 до 1000. Что ни так понимаю, где...

Вылетает ошибка ".exe has triggered a breakpoint" Не понимаю, что не так - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() { int pSourceData = 10; int nSourceDataLen =...

почему это так работает - C++
по заданию надо создать два одинаковых массива с случайными числами от 0 до 99 for (i = 0; i &lt; 1000; i++) { cout &lt;&lt;a&lt;&lt;&quot; &quot;; ...


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

Или воспользуйтесь поиском по форуму:
12
Yandex
Объявления
29.05.2014, 22:58
Ответ Создать тему
Опции темы

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