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

Текстовые файлы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Интервал между датами в структуре! http://www.cyberforum.ru/cpp-beginners/thread107627.html
#include<iostream.h> #include<math.h> #include<conio.h> struct time { int day; int month; int year; }; const int n=4;
C++ html в консоли можно ли открыть хтмл файл в консоли,то есть консоль как браузер,но только для файлов http://www.cyberforum.ru/cpp-beginners/thread107615.html
C++ Создание словаря текстового файла.
Здравствуй!! Помогите пожалуйста начинающему программисту. Задача такая: есть текстовый файл .txt в нём содержится текст, нужно прочитать из него информацию и создать файл в котором будет содержаться слово и его порядковые места в тексте. Например:исходные значения: мама моет раму моет мама раму должны получить: мама 1, 5 моет 2, 4 раму...
Даны длины сторон А, В, С некоторого треугольника. Определить его медианы. C++
Надо написать программу с функциями, перегрузку и шаблон к ней. вот задание: "Даны длины сторон А, В, С некоторого треугольника. Определить его медианы. Длина медианы, проведенной к стороне А, вычисляется по формуле: l=0,5√(2В^2+2С^2-А^2 )" очень срочно! заранее спасибо=)
C++ не могу написать прогу :( http://www.cyberforum.ru/cpp-beginners/thread107592.html
помогите пожалуйста, есть 2 файла 1: порядковый номер параметра и параметр 2: порядковый номер и тип параметра ("1" - 16-ти разрядный параметр, мантисса (15-1) разряды, знак в 16-м разряде "2" - 32-х разрядный параметр, мантисса (31-1) разряды, знак в 32-м разряде "4" - 16-ти разрядный код, мантисса (16-1) разряды "6" - 32-х разрядный код, мантисса (32-1) разряды) нужно проверить 1: в первом...
C++ Максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы надо короче чтоб прога искала максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы. У меня если квадратная матрица выше 3-его порядка прога не считает, подскажите какой мне цикл нужен))) #include<stdio.h> #include<iomanip.h> #include<iostream.h> #include <iostream.h> #include <iomanip.h> int main() { подробнее

Показать сообщение отдельно
Expelio
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
26.03.2010, 19:06  [ТС]     Текстовые файлы
это понятно, у меня сейчас проблема в другом, мне в самый первый файл необходимо не просто весь массив сохранить а лишь те пары элементов которые соответствуют условию задачи (в первом посте)

я так понимаю это необходимо сделать с помощью функций isdigit(), isalpha()
но как не ковырялся что-то не получается

Добавлено через 1 час 30 минут
ОЧЕНЬ ПРОШУ ПОМОЧЬ!!! +)

Вот пока получился такой код проги. (генерируется матрица, сохраняется в файл, предварительно пройдя отсортировку элементов через функции isdigit и asalpha)

У меня два вопроса:
1) Если два элемента не удовлетворяют условиям (по функции isalpha и isdigit) то в файле остается просто пустая строка, каким образом удалить эту ненужную строку в файле ?
2) Если у меня, к примеру в матрице оказались две строки где оба элементы буква-буква, то в файле сохраняются эти обе строки, как можно сделать чтобы сохранялась лишь одна.


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
#include "stdafx.h"
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <iomanip>
#include <ctype.h>
 
using namespace std;
 
int IsLetsDigs(int ch1, int ch2)
{
    ch1 = (unsigned char) ch1;
    ch2 = (unsigned char) ch2;
    
    if ((isalpha(ch1) && isalpha(ch2))
     || (isalpha(ch1) && isdigit(ch2))
     || (isdigit(ch1) && !isalpha(ch2))
     || (!isalpha(ch1) && isdigit(ch2))
     || (isalpha(ch1) && !isdigit(ch2)) )
        return 1;
    return 0;
}
 
int _tmain(int argc, _TCHAR* argv[])
{int i,j;
const int ROW=10;
 const int COL=2;
 char matr[ROW][COL];           
   int s;
   char ntable[] = "ab12!*";
s = sizeof ntable - 1;
   time_t t;
   srand(time(&t));
   srand (unsigned (time (NULL)));
 
   
 for (i=0; i<ROW; i++)                        
        { for (j=0; j<COL; j++)                 
            { matr[i][j]=ntable[rand()%(s-1)]; 
               cout << setw(6) << matr[i][j];
            }
      cout << endl;
  }
 
 
FILE* output=fopen("output.txt","w");
for (int i=0; i<ROW; i++)
{
for(int j=0; j<COL; j++)
if (1 == IsLetsDigs(matr[i][0],matr[i][1]))
{
fprintf(output,"%c %c", matr[i][j]);}
fprintf(output, "%c" ,'\n');
}
 
    return 0;
}
 
Текущее время: 05:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru