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

Ввод ФИО через cin

07.01.2023, 15:41. Показов 2161. Ответов 15

Студворк — интернет-сервис помощи студентам
На втором шаге после ввода числа работников нужно ввести ФИО работника, но как это сделать корректно с пробелами по типу: "Иванова Иван Иванович" и так что бы оно не вбивалось в следуюшие cin (табельный номер, час)?
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
#include <iostream>
#include <iomanip>
#include <stdio.h>
#include <string>
 
using namespace std;
 
struct sotrudnik 
{
    string fio;
    string nomer;
    double chas = {};
    double tarif = {};
};
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int n, i;
 
    puts("Введите количество работников: "); cin >> n;
    sotrudnik* a = new sotrudnik[n];
    for (i = 0; i < n; i++)
    {
        cout << "Введите данные работника " << i + 1 << ":" << endl;
        puts("ФИО: "); cin >> (a[i].fio);
        puts("Табельный номер: "); cin >> a[i].nomer;
        puts("Отработанных часов: "); cin >> a[i].chas;
        puts("По часовой тариф: "); cin >> a[i].tarif;
    }
 
    for (i = 0; i < n; i++)
    {
        double zp = 0;
        zp = zp + (a[i].chas * a[i].tarif);
        cout << "Работник: " << a[i].fio << "\t Табельный номер: " << a[i].nomer << "\t Заробатная плата: " << zp;
        cout << endl;
    }
    return 0;
}
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.01.2023, 15:41
Ответы с готовыми решениями:

Ввод через пробел. Как остановить ввод. while(cin >> input)
Здравствуйте. Начну с условия задания. Ввести к-во элементов массива. Заполнить массив. Отсортировать и вывести на экран количество...

Ввод 2х строк через cin >> Как игнорировать ввод пустой строки и продолжить чтение
Добрый день! Вводятся две строки comand и argument. При вводе пустого аргумента нужно проигнорировать ввод и читать следующую команду. НЕ...

Ввод через cin
Игра больше, меньше. Когда ввожу числа - все нормально, ввожу char - выдает ошибку (так и должно быть),когда я ввожу (например: 15afdaf) то...

15
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
07.01.2023, 15:46
getline().
1
Модератор
Эксперт С++
 Аватар для zss
13769 / 10962 / 6491
Регистрация: 18.12.2011
Сообщений: 29,239
07.01.2023, 17:49
Лучший ответ Сообщение было отмечено Morofer как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    cout<<"Введите количество работников: "; 
    cin >> n;
    cin.get();
    sotrudnik* a = new sotrudnik[n];
    for (i = 0; i < n; i++)
    {
        cout << "Введите данные работника " << i + 1 << ":" << endl;
        cout<<"ФИО: "; 
        getline(cin,a[i].fio);
        cout<<"Табельный номер: "; 
        cin >> a[i].nomer;
        cout<<"Отработанных часов: "; 
        cin >> a[i].chas;
        cout<<"Почасовой тариф: "; 
        cin >> a[i].tarif;
        cin.get();
    }
1
0 / 0 / 0
Регистрация: 09.10.2022
Сообщений: 17
07.01.2023, 17:53  [ТС]
Большое спасибо!
0
6 / 6 / 1
Регистрация: 24.09.2019
Сообщений: 78
07.01.2023, 17:54
Цитата Сообщение от Morofer Посмотреть сообщение
На втором шаге после ввода числа работников нужно ввести ФИО работника, но как это сделать корректно с пробелами по типу: "Иванова Иван Иванович" и так что бы оно не вбивалось в следуюшие cin (табельный номер, час)?
Называть переменные транслитом -- последнее дело. Если Вы не знаете английский -- лучше посидеть с переводчиком, но назвать правильно.
Если слова раннее не убедили Вас, то подумайте о том, как на это отреагирует Ваш преподаватель.
0
Заблокирован
07.01.2023, 22:47
Цитата Сообщение от Катя__ Посмотреть сообщение
Если слова раннее не убедили Вас, то подумайте о том, как на это отреагирует Ваш преподаватель.
Почему его это должно волновать ?
0
6 / 6 / 1
Регистрация: 24.09.2019
Сообщений: 78
13.01.2023, 11:04
Цитата Сообщение от SmallEvil Посмотреть сообщение
Почему его это должно волновать ?
Конкретно у меня в ВУЗе за такие названия переменных выгоняли из кабинета, не дав запустить программу -- было очень грустно и обидно. Сдачи ЛР происходили раз в 2 недели, ЛР было много. Не сдал в одну сдачу -- потерял темп. Ближе к концу семестра вводилось правило о сдаче не более 1ой лр за пару.
Предполагаю, что у большинства студентов условия примерно те же.
0
Заблокирован
13.01.2023, 13:24
Катя__, очень познавательно.
И как итоговые срезы по курсу Информатики ? Какая успеваемость и критическая оценка знаний ?
Думаю не очень. Если английский "вери бед", не вижу смысла делать "вери бед" и остальные предметы .
Но я вас услышал.

Добавлено через 1 минуту
Катя__, кстати, а за такие переменные ?
i,j,k, lp, kmm, sort1, sort2, sortnn, dp, ffm ? )

Добавлено через 1 минуту
Напомнило мне строгий дресскод в школе.
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,531
Записей в блоге: 1
13.01.2023, 14:06
Цитата Сообщение от SmallEvil Посмотреть сообщение
Думаю не очень.
почему же? Вы считаете всех студентов недалёкими дурачками, которые программировать только вчера начали? Такие конечно встречаются, ну да... называются двоечники! Они скорее исключение, чем правило.
Обычно этап "памагити обявидь пирименнаю" школьники проходят в школе и в универ приходят учиться не совсем тупой базе.
0
Заблокирован
13.01.2023, 15:09
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Вы считаете всех студентов недалёкими дурачками
Я так не считаю. Где Kuzia domovenok, такое увидел ?
Есть различные методологии обучения.
Методологии строго загоняющие в узкие рамки - не самые лучшие.
Которые провоцируют "хвосты" и стирают личные качества учащихся.
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,531
Записей в блоге: 1
13.01.2023, 17:05
Цитата Сообщение от SmallEvil Посмотреть сообщение
Методологии строго загоняющие в узкие рамки - не самые лучшие.
Которые провоцируют "хвосты" и стирают личные качества учащихся.
Давайте всё же по порядку, торопить студентов или нет - это отдельный вопрос, который сам собой отпадёт, если мы вернёмся к моему
Обычно этап "памагити обявидь пирименнаю" школьники проходят в школе и в универ приходят учиться не совсем тупой базе.
если с этим все согласны, то и нет смысла выяснять, хорошо или плохо торопить студентов, потому что торопить не из-за чего будет. У них крепкие школьные знания, подтверждённые высокими баллами ЕГЭ по информатике. ЕГЭ сейчас вполне сносно проверяет навыки кодинга. В школе сейчас вполне сносно учат на Пайтоне, факультативно изучают всё что угодно и Си и Математику и Шахматы и Японский язык. При таких входных данных уже немного другой разговор получается, так или нет? Уже как-то и поводов для поблажек для новичков стало меньше, да и новички видятся не совсем новичками...
0
Заблокирован
13.01.2023, 17:14
Kuzia domovenok, мы еще говорим про этот конкретный случай ? Потому что я - да.
Цитата Сообщение от Катя__ Посмотреть сообщение
Конкретно у меня в ВУЗе за такие названия переменных выгоняли из кабинета
То есть :
1. студента лишают часа образования за, минуточку, названия переменных.
2.
Цитата Сообщение от Катя__ Посмотреть сообщение
Ближе к концу семестра вводилось правило о сдаче не более 1ой лр за пару.
Переведу, ограничивается возможность сдачи пропущенного/неосвоенного материала !
Мы точно про разные вещи говорим.
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,531
Записей в блоге: 1
13.01.2023, 18:10
Признаю, я немного не про то говорил, ну тогда поговорим о
Цитата Сообщение от SmallEvil Посмотреть сообщение
студента лишают часа образования за, минуточку, названия переменных.
Это про студента-двоечника. Я продолжаю настаивать, что в основной массе российские студенты молодцы и программировать учатся ещё в школе. Имеют право/не имеют лишать двоечников часа... тоже немного другой вопрос. Даже если не имеют, основной массы студентов эта неприятность не коснётся и на успеваемость всего потока не повлияет!
0
Заблокирован
13.01.2023, 18:59
Kuzia domovenok, приведенные Катя__-ей, моменты обучения, очень вероятно, проявление более запущенной и системной проблемы. Которую я уже описал.
То-есть, узкие рамки. Без инициативы и творчества. То есть будут учится на "отгребись".
И то что средняя успеваемость будет "типа" в норме, ничего не скажет об реальном усвоении материала.
Славный оффтопик получился

Добавлено через 1 минуту
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
студента лишают часа образования за, минуточку, названия переменных.
Это про студента-двоечника.
Совсем нет.
0
6 / 6 / 1
Регистрация: 24.09.2019
Сообщений: 78
13.01.2023, 23:29
Цитата Сообщение от SmallEvil Посмотреть сообщение
Катя__, кстати, а за такие переменные ?
i,j,k, lp, kmm, sort1, sort2, sortnn, dp, ffm ? )
С этим всё в порядке. На самом деле, озвученные мной моменты лично на меня повлияли, как я считаю, положительно как минимум в том плане, что кодстайл соблюдается всегда.
Такой пендель даёт мотивацию учиться, хотя, конечно, есть люди, на которых это всё производит обратный эффект.

Добавлено через 1 минуту
Цитата Сообщение от SmallEvil Посмотреть сообщение
1. студента лишают часа образования за, минуточку, названия переменных.
Это происходило на отдельной паре -- не лекции, а сдаче ЛР. На сдаче ЛР все сдают ЛР. Не получилось сдать ЛР -- ждёшь следующей сдаче ЛР 2 недели. На таких сдачах не учат -- на них принимают работы, дают доп задания, иногда объясняют какие-то моменты при защите. Учат на лекциях.
1
Заблокирован
13.01.2023, 23:40
Цитата Сообщение от Катя__ Посмотреть сообщение
Это происходило на отдельной паре -- не лекции, а сдаче ЛР. На сдаче ЛР все сдают ЛР. Не получилось сдать ЛР -- ждёшь следующей сдаче ЛР 2 недели. На таких сдачах не учат -- на них принимают работы, дают доп задания, иногда объясняют какие-то моменты при защите. Учат на лекциях.
Спасибо, теперь пару моментов прояснилось.

Цитата Сообщение от Катя__ Посмотреть сообщение
Сообщение от SmallEvil
Катя__, кстати, а за такие переменные ?
i,j,k, lp, kmm, sort1, sort2, sortnn, dp, ffm ? )
С этим всё в порядке.
Я специально привел такие переменные, потому что в большинстве случаев, это еще более страшно чем транслит.
Так как назначение этих переменных неочевидны. И на такой коде-стайл тоже нужно указывать.
А вообще, любого рода коде-стайл, никак не участвует в обучении алгоритмов. Это дело уже 100500-ое.

Добавлено через 1 минуту
И в этом конкретном случае, это просто бзик препода : не принимать работы с каким то кодо-стайлом.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.01.2023, 23:40
Помогаю со студенческими работами здесь

Ввод уравнения через cin
Здравствуйте, столкнулся с проблемой. Нужно ввести значения х_min = pi/5, x_max = 9*pi/5. не пойму как это можно сделать. #include...

Ввод через cin нескольких чисел
Здравствуйте. Требуется, чтобы пользователь ввел через запятую два числа. Используя scanf(), я бы написал примерно так:...

Пропустить ввод через cin нажатием Enter
Задача: при нажатии enter пропустить ввод значения от пользователя Пытаюсь сейчас понять, как пропустить ввод от пользователя ...

Бесконечный ввод значений через команду cin
Поставлена задача создать целочисельную матрицу и написать к ней такие ф-ции: будут вводить и выводить двомерный массив будет...

Оператор cin. Ввод нескольких переменных через делитель
Всем доброго времени суток. Я начинаю работать с C++ и столкнулся с такой проблемой при написании программы. Мне надо ввести в консольном...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru