HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Задачка по С++
  #1  
Старый 19.12.2006, 22:09
NaX[no]rT
Members of Antichat
Регистрация: 03.09.2005
Сообщений: 594
С нами: 10886786

Репутация: 685


Cool Задачка по С++

Вообщем есть файл, в нем примерно такие данные:
Код:
1 1 2 3 1
2 2 2 3 3
1 2 5 34 32
345 3 234 23 23
Как средствами С++ выдрать эти данные из файла и подготовить их к дальнейшей работе. Интересны ваши предложения, по решению данной задачи.
 
Ответить с цитированием

  #2  
Старый 19.12.2006, 22:15
nc.STRIEM
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
С нами: 10578566

Репутация: 1228


По умолчанию

а че мало читалок файлов??
тем же ifstream можно, или fread() или fgetc() вариантов масса!
а ваше лучше раскажи куда те их записать то надо?? в масив? в чаровский или интовый?
 
Ответить с цитированием

  #3  
Старый 19.12.2006, 22:33
NaX[no]rT
Members of Antichat
Регистрация: 03.09.2005
Сообщений: 594
С нами: 10886786

Репутация: 685


По умолчанию

В массив int
 
Ответить с цитированием

  #4  
Старый 19.12.2006, 23:38
nc.STRIEM
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
С нами: 10578566

Репутация: 1228


По умолчанию

вот лови один из вариантов
Код:
#include <stdio.h>
#include <iostream>
#include <stdlib.h>
using namespace std;

void main(void)
{
	FILE *f;
	f=fopen("1.txt","r");
	char c[16];
	int byf[128],i=0,j=0;

  while(1)
  {
     i=0;
	 while(1)
	 {
       c[i]=fgetc(f);
	   if(c[i]==' ' || c[i]=='\n' || c[i]=='\t' || c[i]==EOF) 
		 break;
	   i++;
	 }
	 byf[j]=atoi(c);
	 j++;
	 if(c[i]==EOF)
		break;
  }

		for(i=0;i<j;i++)
			cout<<byf[i]<<endl;
	
}
 
Ответить с цитированием

  #5  
Старый 21.12.2006, 01:34
NaX[no]rT
Members of Antichat
Регистрация: 03.09.2005
Сообщений: 594
С нами: 10886786

Репутация: 685


По умолчанию

Вариант, но не нравится мне) оставлю свою организацию тогда (:
 
Ответить с цитированием

  #6  
Старый 21.12.2006, 02:21
nc.STRIEM
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
С нами: 10578566

Репутация: 1228


По умолчанию

Цитата:
Сообщение от NaX[no]r†  
Вариант, но не нравится мне) оставлю свою организацию тогда (:
а что не нравиться?? те надо чтоб как матрицу сохраняло?? в двумерный массив
 
Ответить с цитированием

  #7  
Старый 21.12.2006, 01:38
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
С нами: 10721066

Репутация: 4360


По умолчанию

элементарно, что тут сложного?
создаем двухмерная массив (матрицу) и пишем туда числа.
ifstream/fscanf
 
Ответить с цитированием

решение
  #8  
Старый 23.12.2006, 04:58
sni4ok
Участник форума
Регистрация: 04.11.2006
Сообщений: 150
С нами: 10271420

Репутация: 175
По умолчанию решение

Код:
#include <string>
#include <vector>
#include <fstream>
#include <sstream>

int _tmain(int argc, _TCHAR* argv[])
{

	//вариант 1: загоняем все значения в вектор
	std::vector<int> buf;
	{
		std::ifstream f("C:/file.txt");
		std::copy(std::istream_iterator<int>(f),std::istream_iterator<int>(),std::back_inserter(buf));
	}

	//вариант 2: загоняем все значения в вектор векторов
	std::vector<std::vector<int> > buf2;
	std::ifstream f("C:/file.txt");
	{
		std::string tmp;
		while(std::getline(f,tmp,'\n')){
			std::vector<int> buf;
			std::stringstream ss;
			ss << tmp;
			std::copy(std::istream_iterator<int>(ss),std::istream_iterator<int>(),std::back_inserter(buf));
			buf2.push_back(buf);
		}
	}
	return 0;
}
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...