Я написала программу:
#include
#include
using namespace std;
int main()
{
ifstream file("Text1.txt");
int a;
do
{
if (file >> a)
{
cout << a << endl;
}
else
{
file.clear();
file.ignore(1, ' ');
}
} while (!file.eof());
file.close();
return 0;
}
Она работает правильно, но преподаватель сказал, чтобы я написала её через специальную функцию для поиска чисел. Функцию он не сказал.
Что это за функция?
C/C++
Написать программу, которая выводит числа из файла с текстом и числами. С++
stod
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
string line = "-357.025 Kitty 27.56 Oops -2.014-e27 87ghf -0 -nan inf 000000 1.5e492";
istringstream iss(line);
string token;
while (iss >> token) {
try {
auto number = stod(token);
cout << number << '\n';
} catch (...) {
iss.clear();
}
}
cout.put('\n');
system("pause > nul");
}
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
string line = "-357.025 Kitty 27.56 Oops -2.014-e27 87ghf -0 -nan inf 000000 1.5e492";
istringstream iss(line);
string token;
while (iss >> token) {
try {
auto number = stod(token);
cout << number << '\n';
} catch (...) {
iss.clear();
}
}
cout.put('\n');
system("pause > nul");
}
Может он регулярные выражения имел ввиду?
Velikentli Terekemeli
Не думаю. Мы только начали изучать язык...
Но я попробую.
Но я попробую.
Возможно имел ввиду, что нужно вынести алгоритм поиска и вывода цифр в отдельную функцию.
Velikentli Terekemeli
А как это делается? В самой программе или в отдельном файле? (Прошу простить моё невежество)
//Я думаю вот что он говорил.
в с++ языке есть функция поиска или выписывания чисел из текста называется atoi() если хочешь гугли.
Я думаю он говорил тебе отделить функцию от программы.
То есть написать функцию отдельно, а в коде программы передать в функцию текст с которой нужно вывести числа.
#include
#include
using namespace std;
//Вот функция void "check_pass" принимает на вход данные
//"string password" string это текстовый тип данных.
//Значит можно передать в функцию текстовые данные, а дальше она
//будет там внутри колдовать.
она и колдует.
void check_pass (string password)
{
string valid_pass = "qwerty123";
if (password == valid_pass) {
cout << "Доступ разрешен." << endl;
} else {
cout << "Неверный пароль!" << endl;
}
}
int main()
{
string user_pass; // переменная для строк для текста.
cout << "Введите пароль: "; // вывод на экран
getline (cin, user_pass); // ввод данных с клавиат в user pass
check_pass (user_pass); // Вызов функции и передача ей введ данных
return 0;
}
вот еще.
#include
#include
using namespace std;
вот отдельная функция
void ekran (string ekran)
{
cout << ekran;
}
int main()
{
string text = "Моя 1 я функция";
ekran(text);
return 0;
}
в с++ языке есть функция поиска или выписывания чисел из текста называется atoi() если хочешь гугли.
Я думаю он говорил тебе отделить функцию от программы.
То есть написать функцию отдельно, а в коде программы передать в функцию текст с которой нужно вывести числа.
#include
#include
using namespace std;
//Вот функция void "check_pass" принимает на вход данные
//"string password" string это текстовый тип данных.
//Значит можно передать в функцию текстовые данные, а дальше она
//будет там внутри колдовать.
она и колдует.
void check_pass (string password)
{
string valid_pass = "qwerty123";
if (password == valid_pass) {
cout << "Доступ разрешен." << endl;
} else {
cout << "Неверный пароль!" << endl;
}
}
int main()
{
string user_pass; // переменная для строк для текста.
cout << "Введите пароль: "; // вывод на экран
getline (cin, user_pass); // ввод данных с клавиат в user pass
check_pass (user_pass); // Вызов функции и передача ей введ данных
return 0;
}
вот еще.
#include
#include
using namespace std;
вот отдельная функция
void ekran (string ekran)
{
cout << ekran;
}
int main()
{
string text = "Моя 1 я функция";
ekran(text);
return 0;
}
Velikentli Terekemeli
Мне кажется, это слишком сложно для 4 занятия... Нам вообще объяснили только как файл создавать и закрывать... А дальше сами выкручивайтесь. Это жизненно.
Velikentli Terekemeli
Я забыла сказать спасибо. Извините.
Спасибо!
Спасибо!
cvnbm
Анимешник .%
nv,vbm jb
Анимешник .%
kuhhhhhhhhhhhhkjhy
Похожие вопросы
- Написать программу, которая сравнивает число перестановок элементов при использовании сортировки «пузырьком» (усовершенс
- Напишите программу, которая выводит таблицу факториалов от 1 до 10. c++
- В LINUX OS Написать программу, которая из командной строки получает целое число N и некоторый текст “Text”.
- Написать программу, которая по введенному значению аргумента вычисляет значение функции, заданной в виде
- Написать программу, которая по выбору пользователя меняет цвет консольного приложения C++
- Разработайте программу, которая выводит на экран таблицу:
- Напишите программу, которая подсчитает и выведет количество слов длины 10, которые можно составить из букв a, b, c.
- Даны две обыкновенные дроби(введено пользователем). Написать программу которая делит первую дробь на вторую.
- Помогите пожалуйста написать программу, реализующую десять генераторов псевдослучайных чисел.СИ!!!!
- Программа делится ли число на 3 6 9 без остатка на с++
а ты меня обломал да и код вообще не понятный написал.
Однако, преподаватель имел ввиду немного другое:
#include
#include
#include
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "rus");
char a;
ifstream fin;
fin.open("C:\\Users\\Text.txt");
if (fin.is_open()) \\Если файл открылся
{
cout « "Циферки из файлика" « endl;
while (!fin.eof()) \\пока не кончится
{
fin » a; \\считываем символ
if (isdigit(a)) \\число ли это
cout « a « endl; \\выводим
}
}
else \\если не открылся
cout « "Куда файл делся?" « endl;
return 0;
}
Это слишком просто оказалось.