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

Как работают циклы? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дана последовательность целых чисел а1, а2, …, an. Выяснить, является ли она симметричной последовательностью простых чисел http://www.cyberforum.ru/cpp-beginners/thread704609.html
Дана последовательность целых чисел а1, а2, …, an. Выяснить, является ли она симметричной последовательностью простых чисел Пытался хотя бы находить простые числа в массиве, без проверки на симметричность. Пока то даже это не получилось. #include <math.h> #include <iostream> using namespace std; int main() { int a;
C++ Проверьте правильно ли я написал программу? #include <iostream> using namespace std; int main(){ int a,b,c,x1,x2,dx; cout<< "Inter a="; cin >> a; cout<< "Inter b="; cin >> b; cout<< "Inter c="; cin >> c; cout<< "Inter X1="; cin>> x1; cout<< "Inter X2="; cin>> x2; http://www.cyberforum.ru/cpp-beginners/thread704599.html
Необходимо вычислить значение 2 в степени n. C++
"Необходимо вычислить значение 2 в степени n." как это сделать,помогите пожалуйста? я сделала,но на большие числа не хватает
Быстрая сортировка C++
Задача: Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов. Переставляя столбцы заданной матрицы, расположить их в соответствии с ростом характеристик. Проблема: преподаватель сказал, что можно использовать библиотечную быструю сортировку, но это задача нетривиальная, и проще будет самому (например пузырьковую сортировку). Написать не...
C++ Объяснить код (рекурсивная функция). http://www.cyberforum.ru/cpp-beginners/thread704577.html
Кто может подробно объяснить эту рекурсивную функцию int Mod(int *a, int *end, int k) { return a < end ? ((*a)%k == 0) + Mod(a+1, end, k) : 0; }
C++ Как бы это декларировать? Вектор должен поддерживать и скалярное, и векторное произведение. Добавлено через 1 минуту Реализация - не проблема, проблема в том, что символ умножения в c++ один, а в обоих случаях оба параметра имеют тип Vector. Нельзя же перегрузить на тип значения. подробнее

Показать сообщение отдельно
TrueBit
 Аватар для TrueBit
95 / 95 / 12
Регистрация: 19.11.2012
Сообщений: 195
22.11.2012, 07:39     Как работают циклы?
Объединение строк:
C++
1
2
       for (i=0; str1[i]!=' '; i++) {str3[j]=str1[i];  j++;}
       for (i=0; str2[i]!=' '; i++) {str3[j]=str2[i];  j++;}
Как по вашему цикл for должен узнать что наступил конец строки и прекратить? Здесь нужно сделать дополнительную проверку на конец строки(можно сделать проверку на конец строки в теле цикла, а внутри отдельно проверку на пробелы). Тогда должно работать.


Замена "XY"на "12":
Рассмотрим слудующую строку:
C++
1
if (str3[j]=='X' && str3[j++]=='Y')  {str3[j]=='1'; str3[j++]=='2';}
1) Здесь вы используете j++ он преждевременно увеличивает в цикле значения, в связи с чем проверка несовсем корректна. Лучше использовать j+1 (if (str3[j]=='X' && str3[j++]=='Y') {str3[j]=='1'; str3[j++]=='2';})

2) Помимого этого, при выполнении условия вы выполняете оператор сравнения ==, который соответственно ничего не присваивает реальному элементу в массиве. Поэтому нужно использовать обычное "=". Более правильный код:

C++
1
if (str3[j]=='X' && str3[j+1]=='Y')  {str3[j]='1'; str3[j+1]='2';}
 
Текущее время: 23:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru