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

Удалить из каждой строки файла первые K символов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычислить минимальный элемент http://www.cyberforum.ru/cpp-beginners/thread597118.html
В одномерном массиве вычислить минимальный элемент и вытолкнуть его из массива. Помогите пож.
C++ Описать структуру с именем WORKER, содержащую следующие поля Описать структуру с именем WORKER, содержащую следующие поля: 1) фамилия и инициалы работника; 2) название занимаемой должности; 3) год поступления на работу. Написать программу, выполняющую следующие действия: 1. ввод с клавиатуры данных в массив, состоящий из десяти структур типа WORKER; 2. записи должны быть размещены по алфавиту; 3. вывод на дисплей фамилий работников, чей стаж... http://www.cyberforum.ru/cpp-beginners/thread597097.html
C++ Описать структуру с именем AEROFLOT, содержащую следующие поля
Описать структуру с именем AEROFLOT, содержащую следующие поля: 1) название пункта назначения рейса; 2) номер рейса; 3) тип самолета. Написать программу, выполняющую следующие действия: 1. ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; 2. записи должны быть упорядочены по возрастанию номера рейса; 3. вывод на экран номеров рейсов и типов самолетов,...
C++ Проверить замечательный предел
Проверит численно второй замечательный предел lim(1+1\n)в степени n при n стремящемся к бесконечности=e, задавая n значения 1,2,3... При каком n исследуемой выражение отличается от e меньше, чем на заданную погрешность E. #include<iostream.h> #include<math.h> main() { double E,x,e=2.72,; double n; cout<<"vvedite pogreshnost"; cin>>E;
C++ Описать структуру с именем STUDENT, содержащую следующие поля http://www.cyberforum.ru/cpp-beginners/thread597080.html
Описать структуру с именем STUDENT, содержащую следующие поля: 1) фамилия и инициалы; 2) номер группы; 3) успеваемость (массив из пяти элементов). Написать программу, выполняющую следующие действия: 1. ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT;
C++ Применение strtok() для получения слова Ребят, задача собственно, такая: у заданного текста поменять местами первое и последнее слово. Алгоритм у меня такой. Я с помощью strtok получаю первое и последнее слова, затем, мне нужно посчитать длину текста, расположенного между ними(между первым и последним словом). Длина текста между первым и последним словом= длина всей строки-(длина первого слова+длина последнего). Длины первого и... подробнее

Показать сообщение отдельно
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
06.06.2012, 16:02
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
/** Text18. Дано целое число K и текстовый файл. Удалить из каждой строки файла первые K символов (если длина строки меньше K, то удалить из нее все символы). */
 
#include <iostream>
#include <fstream>
#include <string>
 
int main()
{
    int k;
    std::string buffer, filename1, filename2;
    
    std::cout << "k -> ";
    std::cin >> k;
    std::cout << "input filename -> ";
    std::cin >> filename1;
    std::cout << "output filename -> ";
    std::cin >> filename2;
 
    std::ifstream file1(filename1.c_str());
    std::ofstream file2(filename2.c_str());
  
    if (!file1.is_open())
    {
        std::cerr << "Can't open " << filename1 << " for input!" << std::endl;
        return 1;
    }
  
    if (!file2.is_open())
    {
        std::cerr << "Can't create file " << filename2 << " for output!" << std::endl;
        return 1;
    }
 
    while(std::getline(file1, buffer))
    {
        buffer.erase(0, k);
        if (!buffer.empty())
            file2 << buffer << '\n';
    } 
  
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru