Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 18.02.2010
Сообщений: 37
1

Найти и вывести все имеющиеся пары стоящих рядом одинаковых символов

14.03.2010, 19:28. Показов 2463. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите решить пожалуйста:

Среди данного массива символов, найти и вывести все имеющиеся пары стоящих рядом одинаковых символов. Все исходные величины должны вводиться из файла (in.txt), а результат должен быть записан в результирующий файл (out.txt).

Понимаю конечно что условие отбора if mas[i] = mas[i+1] = условие выполнено, но как делать вывод и ввод в файл не могу разобраться!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.03.2010, 19:28
Ответы с готовыми решениями:

Вывести на печать все имеющиеся в строке пары стоящих рядом одинаковых символов
Вывести на печать все имеющиеся в строке пары стоящих рядом одинаковых символов. Без удаления...

Вывести на печать все имеющиеся в тексте пары стоящих рядом одинаковых символов.
Всем привет. Помогите пожалуйста с задачей.:Вывести на печать все имеющиеся в тексте пары стоящих...

Сосчитать пары рядом стоящих одинаковых элементов массива
Есть 20-ти значный массив один с индексами второй с указателями, надо функцию для каждого массива...

Сосчитать пары рядом стоящих одинаковых элементов массива
Есть 20-ти значный массив с индексами, надо функцию для каждого массива которая будит вывод ответ...

4
5 / 5 / 3
Регистрация: 09.12.2009
Сообщений: 65
14.03.2010, 20:01 2
C++
1
2
3
4
5
6
7
8
9
10
1.  
    FILE* TEST; 
    TEST=fopen("out.txt","a+"); 
    fprintf(TEST,"%s\n", mas[]); 
    fclose(TEST);
2.
    FILE* TEST2; 
    TEST2=fopen("in.txt","r+"); 
    fscanf(TEST,"%s\n", mas[]); 
    fclose(TEST2);
1. Запись в файл
2. Вывод из файла

Зацикливаешь и вместо mas[] используешь mas[i];
1
0 / 0 / 0
Регистрация: 18.02.2010
Сообщений: 37
14.03.2010, 21:48  [ТС] 3
Ври например то что смогла: но куча ошибок которых не могу понять.
И как массиву результат присваивать тоже не могу понять..

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
#include <conio.h>
#include <stdio.h>
#include <fstream.h> 
 
void main()
{
int mas;  
int mas2;  
int i, chislo; 
 
clrscr();
 
//Чтение из файла
ifstream file_in("IN2_17.txt");  
for (i=0;i<=n-1;i++){ file_in >> 
mas[i]=chislo;
};
 
file_in.close();
printf("Soderzimoe faila \"IN2_17.txt\":\n"); 
for (i=0;i<=n-1;i++) printf("%d ", mas[i]);
 
//Решение
for (i=0;i<=n-1;i++) if (mas[i]>mas[i+1]) 
{ //как массиву mas2 присвоить результат???
}
    
//вывод на экран            
printf("\n\n Имеющиеся пары стоящих рядом одинаковых символов: "); 
printf("%d ", mas2);
 
/вывод в файл
ofstream file_out("OUT2_17.txt"); 
 
file_out <<"Soderzimoe faila \"IN2_17.txt\":"<<endl;
for (i=0;i<=n-1;i++) file_out << mas[i] <<" ";
 
file_out <<endl<<" Имеющиеся пары стоящих рядом одинаковых символов: ";
file_out <<mas2;
// ---------------------------------------------
file_out.close();
getch();
Добавлено через 1 час 20 минут
Прошу прощения, опечаталась в прошлом сообщении:

*ВОТ например то что смогла: но куча ошибок которых не могу понять.
И как массиву результат присваивать тоже не могу понять..
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
14.03.2010, 22:07 4
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
/*
*   Среди данного массива символов, найти и вывести все имеющиеся пары стоящих рядом одинаковых символов. 
*   Все исходные величины должны вводиться из файла (in.txt), а результат должен быть записан 
*   в результирующий файл (out.txt).
*/
#include <iostream>
#include <fstream>
 
int main(){
    const char* fin_name = "in.txt";
    const char* fout_name = "out.txt";
    
    char last, cur;
    
    std::ifstream fin(fin_name);
    if ( !fin.is_open() ){
        std::cerr << "Can't open file <" << fin_name << "> for input!" << std::endl;
        return 1;
    }
    std::ofstream fout(fout_name);
    if ( !fout.is_open() ){
        std::cerr << "Can't open file <" << fout_name << "> for output!" << std::endl;
        fin.close();
        return 1;
    }
    
    fin.get(last);
    while ( fin.get(cur) ){
        if ( cur == last )
            fout << cur << last << ' ';
        last = cur;
    }
    
    fin.close();
    fout.close();
    std::cout << "Done." << std::endl;
    return 0;
}
1
0 / 0 / 0
Регистрация: 18.02.2010
Сообщений: 37
14.03.2010, 23:00  [ТС] 5
easybudda, спасибо огромное!
0
14.03.2010, 23:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.03.2010, 23:00
Помогаю со студенческими работами здесь

Сосчитать пары рядом стоящих одинаковых элементов массива
Есть 20-ти значный массив один с индексами второй с указателями, надо написать функцию для каждого...

Вывести все пары совпадающих одинаковых символов последовательности
Для заданной последовательности символов: выдать все пары совпадающих одинаковых символов

Количество пар рядом стоящих одинаковых символов строки
Задание на 7 лабораторную работу Написать программу, которая принимает от пользователя одну или ...

Вывести пары отрицательных чисел, стоящих рядом в массиве
Дан одномерный массив из 10 целых чисел. Вывести пары отрицательных чисел, стоящих рядом.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru