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

Найти ошибку в цикле - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Необходимо определить пересекаются ли прямоугольники http://www.cyberforum.ru/cpp-beginners/thread852643.html
Осталась последняя программа на практике: "Даны два прямоугольника, стороны которых параллельны или перпендикулярны осям координат. Известны координаты левого нижнего угла каждого из них и стороны их...
C++ Сделал задачу, не могу понять, почему не выводит плавоющие запятые! Условия задачи: Составить программу, которая будет вычислять следующую последовательность y= 1+ 1/2 + 1/3 + 1/4 + ... 1/n (Если кому то не очень понятно, то вот скрин формулы: скриншот формулы ... http://www.cyberforum.ru/cpp-beginners/thread852613.html
C++ Создать класс - данные - абстрактный базовый класс. Создать производные классы
Всем привет! У меня вот такая проблема.... Создать класс - данные - абстрактный базовый класс. Создать производные классы - данные типа сигнал, данные типа результат обработки и вспомогательные...
Поменять местами в квадратной матрице строку со столбцом, содержащие максимальный элемент C++
Массив я задал,а дальше через цикл ,но не пойму как это описать,помогите. Вот что есть пока: #include <iostream> #include <clocale> #include <conio.h> #include <iomanip> using namespace...
C++ Односвязный список http://www.cyberforum.ru/cpp-beginners/thread852559.html
Есть связной список. У класса есть метод добавления элементов(additem()). Надо исправить метод, чтобы он добавлял элемент не в начало, а в конец списка. Т.е. если я введу числа к примеру 11,22,33 то...
C++ Разбить программу на файлы Вот в качестве примера, что разделить (пока что это одной программой) #include <iostream> using namespace std; struct COR { int tmp; }; подробнее

Показать сообщение отдельно
Wladius
12 / 7 / 2
Регистрация: 06.01.2013
Сообщений: 127

Найти ошибку в цикле - C++

30.04.2013, 10:32. Просмотров 235. Ответов 1
Метки (Все метки)

Программа находит слова из массива MS и заменяет их цифрами из cif, в данном случае MS[0] это для слова ZERO
И все работает правильно, кроме, того, что цикл пытается выполнится лишний раз и это вызывает ошибку, то есть мне нужно написать какое-то дополнительное условие выхода из цикла, чтобы цикл не пытался выполниться еще раз, помогите пожалуйста


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
  char *MS[]={"ZERO", "ONE", "TWO", "THREE", "FOUR", "FIVE", "SIX", "SEVEN", "EIGHT", "NINE"};
  char text[]="kTWOZEROkloSEVENZEROjONEjZEROkFIVEFOURFIVEFIVEFIVEZEROTHRONEEE", cif[]="0123456789";
  int i=0,j=0, z=0, k=0;
 
while(i<strlen(text)){ 
 
          while(i+j<strlen(text))
      {  if(text[i+j]==MS[0][j])
          {j++; 
              if(j==strlen(MS[0]))
              {text[i]=cif[0];
               while(z<strlen(text)-j)
               {text[i+z+1]=text[i+j+z];
                z++;
            };  break;}  } 
          else i++;  } 
   cout<<text<<endl;  
   j=0; z=0;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru