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

обработка последовательности символов (C++ Builder 6) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибки в программме http://www.cyberforum.ru/cpp-beginners/thread1072541.html
Всем доброго времени! Вопросы по поводу программы. Требуется наводка и разбор ошибок. ////////////////////////////////////////////////////////////////////////// #include "iostream" using namespace std; int main () { int X; int Y; for (int i=0; i<10; ++i) {
C++ Есть код, нужна программа Доброго времени суток! Я никогда не работал с С++. Есть код программы, но нет исходного файла. Подскажите, что мне сделать и как это сделать, чтобы получилась программа. Заранее благодарен http://www.cyberforum.ru/cpp-beginners/thread1072510.html
Блок-схема C++
объясните как решить такую блок-схему через(IF, while, do wihe)
Ошибки в программме C++
Вопросы по поводу программы. Требуется наводка и разбор ошибок.
C++ Найти координаты перпендикулярных им векторов и сформировать из них множество В http://www.cyberforum.ru/cpp-beginners/thread1072501.html
С клавиатуры задаются координаты 3 векторов на плоскости. Найти координаты перпендикулярных им векторов и сформировать из них множество В.
C++ В строке отсортировать слова и вывести их длину Необходимо в строке отсортировать слова и вывести их длину. Стандартных функций не использовать. подробнее

Показать сообщение отдельно
newb_programmer
237 / 237 / 19
Регистрация: 03.09.2011
Сообщений: 555
15.01.2014, 23:32
catsergo, я бы вот как то так доработал.
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 <iostream>
#include <stdio.h>
#include <conio.h>
void main()
{
    
    char* c=new char[_MAX_PATH];
    int f=0,l;
 
    printf("\n Vvedite posledovatelnots, okan4ivaushuusya tochkoi: \n");
    std::cin.getline(c,_MAX_PATH,'.');
    //запоминаем длину строки
    l=strlen(c);
    //запускаем цикл прохода от начала до конца строки
    for (int i=0;i<l;i++)
        //если i-й элемент - число
        if((*(c+i)>='0') && (*(c+i)<='9'))
            //и следующий - наш символ
            if (((*(c+i+1)=='+') || (*(c+i+1)=='-') || (*(c+i+1)=='*') || (*(c+i+1)=='/'))) 
                //увеличиваем счетчик
                f++;
 
    printf("\n Koli4estvo znakov = %d ", f);
 
    delete [] c;
    getch();
}
основная ошибка
C++
1
2
        char c;
        char ch;
вы обьявили 2 переменные типа чар! а вам нужен массив!!!

Добавлено через 3 минуты
я чуть чуть не досмотрел, вам массив впринципе и не нужен но тогда вам надо было 2 переменные инициализировать до начала цикла

Добавлено через 4 минуты
вот по вашему методу, исправил, но так не удобно=))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <stdio.h>
#include <conio.h>
void main()
{
        char c;
        char ch;
        int k=0, f=0;
        printf("\n Vvedite posledovatelnots, okan4ivaushuusya tochkoi: \n");
 
       do {
        //scanf("%c%c",&c,&ch);
        std::cin>>c>>ch;
        if((c>='0') && (c<='9')) 
            if (((ch=='+') || (ch=='-') || (ch=='*') || (ch=='/'))) 
                f++;
        }
       while (ch != '.');
        printf("\n Koli4estvo znakov = %d ", f);
 
getch();
}
Добавлено через 22 секунды
Вывод
Кликните здесь для просмотра всего текста

Vvedite posledovatelnots, okan4ivaushuusya tochkoi:
5 +
5 6
5 -
5 .

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