Другие языки программирования и технологии

помогите с циклом пожалуйста с++

string num;
char symbol;
cin >> num;
cin >> symbol;
for (i = 0, i < lenght; i++) как вместо lenght добавить так чтобы оно было равно числу символов введенным пользователем
Во-первых, чтобы полностью извлечь строку при вводе нужно использовать функцию std::getline, что в библиотеке string; а дальше создаешь ещё одну переменную, которой присваиваешь длину строки с помочью функцию length() через оператор выбора члена num.length();
В итоге должно получиться так:
#include "stdafx.h"
#include "iostream" \\ кавычки нужно заменить угловыми скобками
#include "string" \\ кавычки нужно заменить угловыми скобками
using namespace std;

int main()
{
string num;
char sumbol;
getline(cin, num);
cin >> sumbol;
int length = num.length();
for (int i(0); i < length; i++)
}
Кстати, не забывай инициализировать i в цикле!
Артём Торшенко
Артём Торшенко
1 377
Лучший ответ
Нариман Толегенов getline(cin, num); что означает эта строка?
Тут 2 ввода
первый ввод - строка, второй - один символ
В вашем примере можно определить только длину строки, длина символа равна 1.

for (int i = 0; i < num.length(); i++)
{}
Erlan Ultanbekov
Erlan Ultanbekov
22 714
// Еще один вариант, который работает при использовании обычных строк
#include
#include

using namespace std;

int main( int argc, char* argv[] )
{
size_t len; // В этой переменной будет длина строки
if( argc > 1 )
{
// Вычислим длину первого аргумента командной строки
len = strlen( argv[1] );
cout << "Длина строки \"" << argv[1] << "\" равна " << len << endl;
}
else
{
cout << "Программа вычисляет длину строки. Использование: "<< argv[0] <<" <строка>"<< endl;
}
return 0;
}
Егор Крутелёв #include <iostream>
#include <cstring>