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

потоки с++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывести на экран в возрастающем порядке все трехзначные числа, в десятичной записи которых нет одинаковых цифр. http://www.cyberforum.ru/cpp-beginners/thread725671.html
Вывести на экран в возрастающем порядке все трехзначные числа, в десятичной записи которых нет одинаковых цифр.
C++ Обработка массивов с использованием подпрограмм Прошу помощи! Ввести одномерные массивы X1n1, X2n2 и X3n3 и определить в каждом из них среднее арифметическое отрицательных элементов. Если среднее арифметическое отрицательных существует, то поместить его в чётные ячейки соответствующего массива. Вывести массивы до преобразования и после. (При решении реализовать процедуры ввода и вывода массивов Vvod1m(A,N,Name) и Vivod1m(A,N,Name), функцию... http://www.cyberforum.ru/cpp-beginners/thread725666.html
Segmentation fault при вызове метода C++
Собственно такое дело, имеется следующий код: Item* m_items; Player::Player() { ... memset(m_items, 0, sizeof(Item*)*PLAYER_SLOTS_COUNT); ...
Сложение и умножение матриц C++
Даны квадратные матрицы A(nxn), B(nxn), C(nxn) написать программу вычисления (A+B)*C. Помогите со сложением и умножением Вот мои наработки #include "stdafx.h" #include <iostream> #include <math.h> #include <conio.h> #include <fstream> #include <stdio.h>
C++ Вывести элементы массива на промежутке [ a,b ], вычислить количество элементов массива, заменить все положительные элементы http://www.cyberforum.ru/cpp-beginners/thread725638.html
В одномерном массиве, состоящем из n вещественных элементов, – вывести на печать элементы массива, значения которых не принадлежат промежутку . Значения a,b задавать с клавиатуры; – вычислить количество элементов массива, не меньших элемента с заданным номером, значение номера вводить с клавиатуры; – заменить все положительные элементы массива их правыми соседями, если положительный элемент...
C++ Изменить шрифт и его размер (консоль) Как программно для windows можно поменять шрифт на Lucida Console и размер шрифта, скажем на 10ый ? Например через WINAPI или ещё как, лишь бы работало :) подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
14.12.2012, 18:01     потоки с++
Цитата Сообщение от letnjaja Посмотреть сообщение
надо, чтобы информацию считывал с файла,ошибки вписывал в файл(другой) , если нет создавал его,
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
#include <iostream>
#include <iomanip>
#include <sstream>
#include <string>
#include <fstream>              
using namespace std;
 
void process_all_transactions
        (
            ifstream &in ,  
            ofstream &err,
            double& total_of_spendings,
            int& total_of_shares
        );
    
int main ()
{
    int tot_shares       = 0;
    double tot_spendings = 0;
    
    ifstream ifs("data.txt");//Файл с данными
    ofstream ofs("eror.txt");//Файл с ошибками
    cout<<"Enter data for transaction :"<<endl; 
    process_all_transactions(ifs,ofs,tot_spendings,tot_shares);
    cout<<"Number of shares:"<<tot_shares<<endl;
    cout<<"Price per share:"<<tot_spendings<<endl;
    cout<<"Optional transaction comment"<<endl;
    ifs.close();
    ofs.close();
    system("pause");
    return 0;
}
 
void process_all_transactions (ifstream &in , ofstream &err , double& total_of_spendings , int& total_of_shares)
{
    float number_of_shares=0;
    float total=0;
    string line_transaction;
    while(!in.eof()) //poka ne konec faila
    {
        istringstream iss; // v potok
        int number_of_shares;
        float price_per_share;
 
        if(!getline(in,line_transaction))
            err<<"!getline(in,line_transaction) - No valid data"<< endl; 
        else
        {
            iss.str(line_transaction); //iss chitaet iz peremennoj
           
            if (iss >> number_of_shares >> price_per_share)
            {
                if(price_per_share <0 || (-number_of_shares>total_of_shares))
                    err<<"price_per_share <0 || (-number_of_shares>total_of_shares) - "
                       << "No valid data"<< endl;
                else
                {
                    total_of_shares += number_of_shares;
                    total_of_spendings += number_of_shares*price_per_share;
                }
          
            }
            else
            {
                err<<"!iss >> number_of_shares >> price_per_share - "
                       << "No valid data"<< endl;
                break;
            }
        }
    }
}
Данные должны находиться в файле data.txt который должне быть в каталоге проекта
Содержимое файлов при тесте
data.txt
152.5 1245
12 44
15 54858
25.216 -451
d2gh
Вывод в eror.txt
!iss >> number_of_shares >> price_per_share - No valid data
Миниатюры
потоки с++  
Вложения
Тип файла: txt data.txt (46 байт, 3 просмотров)
 
Текущее время: 14:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru