Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20

Программа должна возвращать новый массив, состоящий из строк вида "И. Фамилия"

11.12.2013, 17:05. Показов 2485. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Помогите пожалуйста, написать код, так как сама не разбираюсь, а нужно сделать эту задачу)
Всем буду очень благодарна за помощь.

Условие задачи:
Введите с клавиатуры терминала массив строк. Каждая строка имеет вид:" Фамилия Имя" (разделяются одним пробелом). Признак окончания ввода массива - строка, содержащая слово "exit". Программа должна возвращать новый массив, состоящий из строк вида "И. Фамилия".

Вот для примера используйте пожалуйста эти имена и фамилии:

Rudenok Sabina
Polishchuk Tanya
Kharchenko Julia
Tymoshenko Dasha

а выводить должно:
S. Rudenok
T. Polishchuk
J. Kharchenko
D. Tymoshenko

Добавлено через 5 часов 18 минут


Добавлено через 18 часов 20 минут
может кто-то делал похожий пример ? помогите пожалуйста
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.12.2013, 17:05
Ответы с готовыми решениями:

Функция должна возвращать новый массив, состоящий из отрицательных элементов исходного массива
У меня есть задание: написать функцию (процедуру) с параметрами для обработки одномерного массива целочисленных данных (количество...

Массив: Создать новый двумерный массив, состоящий из ненулевых столбцов и строк переданного двумерного массива
Создать новый двумерный массив, состоящий из ненулевых столбцов и строк переданного двумерного массива. (Нулевая строка или столбец –...

Задан массив из N чисел. Алгоритм и программа должна выводить исходный и новый массив
Задан массив из N чисел. Алгоритм и программа должна выводить исходный и новый массив, полученный в результате выполнения требований...

25
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
11.12.2013, 17:42
Sabi_na,
Offtop:
вам не помогают не потому, что не знают, как это сделать, а потому, что это смертельно скучно.
0
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20
11.12.2013, 17:48  [ТС]
Цитата Сообщение от StackOverflow Посмотреть сообщение
Sabi_na,
Offtop:
вам не помогают не потому, что не знают, как это сделать, а потому, что это смертельно скучно.
блин скучно, никто не хочет мне помочь(
я могу заплатить за эту задачу, она мне очень нужна.
0
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
11.12.2013, 17:55
Sabi_na,
напишите пожалуйста в ЛС, когда вам нужна эта программа.
0
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20
11.12.2013, 18:14  [ТС]
Цитата Сообщение от StackOverflow Посмотреть сообщение
Sabi_na,
напишите пожалуйста в ЛС, когда вам нужна эта программа.
у меня еще закрытые ЛС, на пятницу сможешь сделать ?
0
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
11.12.2013, 18:20
Sabi_na,
Offtop:
без проблем, если меня не опередят)
0
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20
11.12.2013, 18:23  [ТС]
Цитата Сообщение от StackOverflow Посмотреть сообщение
Sabi_na,
Offtop:
без проблем, если меня не опередят)
ну если ты знаешь как делать и есть время, можешь и сейчас сделать, от меня большое спасибо и вознаграждение за помощь)
0
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
12.12.2013, 02:44
Sabi_na,
если есть вопросы, спрашивай, на все отвечу.
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
//StackOverflow
//All rights reserved.
 
#include <iostream>
#include <vector>
#include <cctype>
using namespace std;
 
int main()
{
    const int capacity = 50;
    vector<string> * catalog[ capacity ];
    
    for ( int i = 0; i < capacity; i++ )
    {
        catalog[ i ] = new vector<string>;
        catalog[ i ]->reserve( 2 );
    }
 
    int index = 0;
    string fullName;
 
    do {
        getline( cin, fullName );
 
        string name;
        string surname;
        size_t position = fullName.find( ' ', 0 );
 
        while ( position != std::string::npos )
        {
            if ( position == 0 )
            {
                fullName.erase( fullName.begin() );
                position = fullName.find( ' ', 0 );
            }
            else
            {
                surname.assign( fullName, 0, position );
                name.assign( fullName, position + 1, fullName.length() - ( position + 1 ) );
                catalog[ index ]->push_back( name );
                catalog[ index ]->push_back( surname );
                position = std::string::npos;
            }
        }
        
        ++index;
 
    } while ( fullName.compare( "exit" ) != 0 || index == capacity );
 
    
    for ( int i = 0; catalog[ i ]->empty() != true; i++ )
    {
        if ( islower( ( catalog[ i ]->at( 0 ) ).at( 0 ) ) )
        {
            toupper( ( catalog[ i ]->at( 0 ) ).at( 0 ) );
        }
 
        if ( islower( ( catalog[ i ]->at( 1 ) ).at( 0 ) ) )
        {
            toupper( ( catalog[ i ]->at( 1 ) ).at( 0 ) );
        }
 
        cout << ( catalog[ i ]->at( 0 ) ).at( 0 ) << ". " << catalog[ i ]->at( 1 ) << endl;
    }
 
 
    for ( int i = 0; i < capacity; i++ )
    {
        delete catalog[ i ];
    }
 
 
    return 0;
}
Добавлено через 53 минуты
В 49 строчке исправить на:
C++
1
index != capacity
1
What a waste!
 Аватар для gray_fox
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
12.12.2013, 03:20
Вроде так)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <sstream>
#include <string>
 
 
int main() {
   for (std::string line; std::getline(std::cin, line) && (line != "exit"); ) {
       std::istringstream iss(line);
       std::string forename, familyname;
 
       iss >> familyname >> forename;
       
       std::cout << forename[0] << ". " << familyname << std::endl;
    }
}
2
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
12.12.2013, 03:24
gray_fox, Offtop:
Доброй ночи!)
Слил меня просто
0
What a waste!
 Аватар для gray_fox
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
12.12.2013, 03:45

Не по теме:

Цитата Сообщение от StackOverflow Посмотреть сообщение
Доброй ночи!)
Доброй)
Цитата Сообщение от StackOverflow Посмотреть сообщение
Слил меня просто
Да ладно...)



Добавлено через 7 минут

Не по теме:

Хорошо, извиняюсь, больше не буду вмешиваться... :D

0
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
12.12.2013, 04:09
gray_fox, Offtop:
Да ладно, я всегда только рад что-нибудь новенькое узнать!) Сохранил твой вариант у себя)

P.S. Кстати, а как сделать, чтобы сообщение 'Не по теме' автоматически делалось, вот как у тебя. А то мне приходится вручную текст красить
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 14
12.12.2013, 11:33
Цитата Сообщение от StackOverflow Посмотреть сообщение
Sabi_na,
если есть вопросы, спрашивай, на все отвечу.
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
//StackOverflow
//All rights reserved.
 
#include <iostream>
#include <vector>
#include <cctype>
using namespace std;
 
int main()
{
    const int capacity = 50;
    vector<string> * catalog[ capacity ];
    
    for ( int i = 0; i < capacity; i++ )
    {
        catalog[ i ] = new vector<string>;
        catalog[ i ]->reserve( 2 );
    }
 
    int index = 0;
    string fullName;
 
    do {
        getline( cin, fullName );
 
        string name;
        string surname;
        size_t position = fullName.find( ' ', 0 );
 
        while ( position != std::string::npos )
        {
            if ( position == 0 )
            {
                fullName.erase( fullName.begin() );
                position = fullName.find( ' ', 0 );
            }
            else
            {
                surname.assign( fullName, 0, position );
                name.assign( fullName, position + 1, fullName.length() - ( position + 1 ) );
                catalog[ index ]->push_back( name );
                catalog[ index ]->push_back( surname );
                position = std::string::npos;
            }
        }
        
        ++index;
 
    } while ( fullName.compare( "exit" ) != 0 || index == capacity );
 
    
    for ( int i = 0; catalog[ i ]->empty() != true; i++ )
    {
        if ( islower( ( catalog[ i ]->at( 0 ) ).at( 0 ) ) )
        {
            toupper( ( catalog[ i ]->at( 0 ) ).at( 0 ) );
        }
 
        if ( islower( ( catalog[ i ]->at( 1 ) ).at( 0 ) ) )
        {
            toupper( ( catalog[ i ]->at( 1 ) ).at( 0 ) );
        }
 
        cout << ( catalog[ i ]->at( 0 ) ).at( 0 ) << ". " << catalog[ i ]->at( 1 ) << endl;
    }
 
 
    for ( int i = 0; i < capacity; i++ )
    {
        delete catalog[ i ];
    }
 
 
    return 0;
}
Добавлено через 53 минуты
В 49 строчке исправить на:
C++
1
index != capacity
исправила я 49 строчку и не работает задача(
и почему в коде я не видела этой информации
Rudenok Sabina
Polishchuk Tanya
Kharchenko Julia
Tymoshenko Dasha

мне же должно выводить И. Фамилия.

а в этом коде что ты написал я вообще не могу ничего понять, я тебя прошу только одно сделай так что б все работало)
0
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20
12.12.2013, 11:43  [ТС]
ааа блин, просила друга в личку написать так как у меня ЛС еще закрытие, вообщем прости, но вся суть там изложена)
0
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
12.12.2013, 15:34
Sabi_na, всё работает прекрасно. А тестовую информацию вы уже сами вводите. Если не работает, то пишите сюда сообщения компилятора, на какие ошибки он ссылается. Повторюсь, перепроверил, всё работает как часы.
0
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20
12.12.2013, 17:28  [ТС]
Цитата Сообщение от StackOverflow Посмотреть сообщение
Sabi_na, всё работает прекрасно. А тестовую информацию вы уже сами вводите. Если не работает, то пишите сюда сообщения компилятора, на какие ошибки он ссылается. Повторюсь, перепроверил, всё работает как часы.
1> Создание каталога "c:\users\sabina\documents\visual studio 2010\Projects\oq\Debug\".
1>InitializeBuildStatus:
1> Создание "Debug\oq.unsuccessfulbuild", так как было задано "AlwaysCreate".
1>ClCompile:
1> oq.cpp
1>c:\users\sabina\documents\visual studio 2010\projects\oq\oq\oq.cpp(21): error C3861: getline: идентификатор не найден
1>c:\users\sabina\documents\visual studio 2010\projects\oq\oq\oq.cpp(61): error C2679: бинарный "<<": не найден оператор, принимающий правый операнд типа "std::basic_string<_Elem,_Traits,_Ax >" (или приемлемое преобразование отсутствует)
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>,
1> _Ax=std::allocator<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(679): может быть "std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>>(std::bas ic_ostream<_Elem,_Traits> &,const char *)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(726): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>>(std::bas ic_ostream<_Elem,_Traits> &,char)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(764): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_os tream<_Elem,_Traits> &,const char *)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(811): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_os tream<_Elem,_Traits> &,char)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(937): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_os tream<_Elem,_Traits> &,const signed char *)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(944): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_os tream<_Elem,_Traits> &,signed char)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(951): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_os tream<_Elem,_Traits> &,const unsigned char *)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(958): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<std::char_traits<char>>(std::basic_os tream<_Elem,_Traits> &,unsigned char)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(968): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>,std::basi c_string<_Elem,_Traits,_Ax>>(std::basic_ ostream<_Elem,_Traits> &&,_Ty)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>,
1> _Ax=std::allocator<char>,
1> _Ty=std::basic_string<char,std::char_tra its<char>,std::allocator<char>>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(1085): или "std::basic_ostream<_Elem,_Traits> &std::operator <<<char,std::char_traits<char>>(std::bas ic_ostream<_Elem,_Traits> &,const std::error_code &)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(186): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(std::basic_ostream<_Elem,_Traits> &(__cdecl *)(std::basic_ostream<_Elem,_Traits> &))"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(192): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(std::basic_ios<_Elem,_Traits> &(__cdecl *)(std::basic_ios<_Elem,_Traits> &))"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(199): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(std::ios_base &(__cdecl *)(std::ios_base &))"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(206): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(std::_Bool)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(226): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(short)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(260): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(unsigned short)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(280): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(int)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(305): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(unsigned int)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(325): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(long)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(345): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(unsigned long)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(366): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(__int64)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(386): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(unsigned __int64)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(407): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(float)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(427): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(double)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(447): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(long double)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(467): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(const void *)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\ostream(487): или "std::basic_ostream<_Elem,_Traits> &std::basic_ostream<_Elem,_Traits>::oper ator <<(std::basic_streambuf<_Elem,_Traits> *)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1> при попытке сопоставить список аргументов "(std::basic_ostream<_Elem,_Traits>, std::basic_string<_Elem,_Traits,_Ax>)"
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits<char>
1> ]
1>
1>СБОЙ построения.
1>
1>Затраченное время: 00:00:02.62
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========



вот смотри что пишет (
0
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
12.12.2013, 17:45
Sabi_na, он ругается на 24 и 64 строчки моего кода, но они совершенно тривиальны. Даже не знаю, в чём дело у этого продукта от майкрософт. Попробуйте добавить директиву #include <string> в самом начале.
0
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20
12.12.2013, 17:51  [ТС]
Цитата Сообщение от StackOverflow Посмотреть сообщение
Sabi_na, он ругается на 24 и 64 строчки моего кода, но они совершенно тривиальны. Даже не знаю, в чём дело у этого продукта от майкрософт. Попробуйте добавить директиву #include <string> в самом начале.
добавила, теперь ошибки нет, запустила в окне ничего не выводит, можешь мне для примера в этот код вставить одну Фамилию и Имя, остальные уже по примеру сама буду как-то вставлять)
0
All rights reserved.
93 / 83 / 24
Регистрация: 03.08.2013
Сообщений: 258
12.12.2013, 17:56
Sabi_na, так вы начинайте данные вводить. Он и не будет вам ничего выводить, пока вы сами, ручками, не пропишите Фамилию Имя и не нажмёте Enter. Потом введите exit, нажмите Enter и вуаля!
И, да, условие в 49 строчке исправьте на:
C++
1
fullName.compare( "exit" ) != 0 && index < capacity
Так надёжнее и правильнее. Потом уже собирайте.
0
0 / 0 / 0
Регистрация: 10.12.2013
Сообщений: 20
12.12.2013, 18:05  [ТС]
Цитата Сообщение от StackOverflow Посмотреть сообщение
Sabi_na, так вы начинайте данные вводить. Он и не будет вам ничего выводить, пока вы сами, ручками, не пропишите Фамилию Имя и не нажмёте Enter. Потом введите exit, нажмите Enter и вуаля!
И, да, условие в 49 строчке исправьте на:
C++
1
fullName.compare( "exit" ) != 0 && index < capacity
Так надёжнее и правильнее. Потом уже собирайте.

#include <string>
#include <iostream>
#include <vector>
#include <cctype>
using namespace std;

int main()
{
const int capacity = 50;
vector<string> * catalog[ capacity ];

for ( int i = 0; i < capacity; i++ )
{
catalog[ i ] = new vector<string>;
catalog[ i ]->reserve( 2 );
}

int index = 0;
string fullName;

do {
getline( cin, fullName );

string name;
string surname;
size_t position = fullName.find( ' ', 0 );

while ( position != std::string::npos )
{
if ( position == 0 )
{
fullName.erase( fullName.begin() );
position = fullName.find( ' ', 0 );
}
else
{
surname.assign( fullName, 0, position );
name.assign( fullName, position + 1, fullName.length() - ( position + 1 ) );
catalog[ index ]->push_back( name );
catalog[ index ]->push_back( surname );
position = std::string::npos;
}
}

++index;

} while ( fullName.compare( "exit" ) != 0 && index < capacity );


for ( int i = 0; catalog[ i ]->empty() != true; i++ )
{
if ( islower( ( catalog[ i ]->at( 0 ) ).at( 0 ) ) )
{
toupper( ( catalog[ i ]->at( 0 ) ).at( 0 ) );
}

if ( islower( ( catalog[ i ]->at( 1 ) ).at( 0 ) ) )
{
toupper( ( catalog[ i ]->at( 1 ) ).at( 0 ) );
}

cout << ( catalog[ i ]->at( 0 ) ).at( 0 ) << ". " << catalog[ i ]->at( 1 ) << endl;
}


for ( int i = 0; i < capacity; i++ )
{
delete catalog[ i ];
}


return 0;
}


ты наверно с меня гонишь там)))
ладно вообщем исправила я вот так как ты и говорил.
потом запускаю программу, пишу в этом окне Rudenok Sabina, нажимаю enter и просто переводит на нижнюю строку, ничего оно мне не выводит(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.12.2013, 18:05
Помогаю со студенческими работами здесь

Получить новый массив, состоящий из суммы строк исходной матрицы
Дана матрица целых чисел X. Получить новый массив Y, состоящий из суммы строк исходной матрицы X. Вывести исходную матрицу и полученный...

Ввести массив состоящий из 10 элементов (двухзначные числа) целого типа получить новый массив состоящий из разностей
Ввести массив состоящий из 10 элементов (двухзначные числа) целого типа получить новый массив состоящий из разностей цифр элементов...

Ввести массив, состоящий из 8 элементов (восемь двухзначных чисел) целого типа. Получить новый массив, состоящий из цифр
Ввести массив, состоящий из 8 элементов (восемь двухзначных чисел) целого типа. Получить новый массив, состоящий из цифр, что находятся...

Функция должна возвращать массив
Здравствуйте, ВСЕ. Такое описание функции не проходит. function FindSubstr(S, Substr: string; Index, Count: integer): array of...

Функция должна возвращать int массив
Вот функция: int* letterCounts(string text){ int* letter_counts = new int ; for (int i = 0; i &lt; 26; i++) ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru