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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
O][o7n1k
7 / 7 / 1
Регистрация: 26.02.2009
Сообщений: 64
#1

Программа - C++

17.01.2011, 18:57. Просмотров 396. Ответов 6
Метки нет (Все метки)

Не могу понять где ошибка,помогите пожалуйста.
Прочитать из файла строку символов. Изменить данную строку так, чтобы каждый символ не цифра был заменен цифрой. Цифры при замене брать последовательно, начиная с 9 и заканчивая 0. Новую строку не создавать. Вывести исходную и преобразованную строки.
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
#include <iostream.h>
#include <fstream.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
using namespace std;
main()
{
    char* st,buf;
    
    int i=1,j=0,jj=9;
    ifstream in("read.txt", ios::in);
    if (!in)
    {
        cout << "Can't open file!\n";
    }
     cout <<"Ishodnaya stroka:";
     
       in>>st;
       in.close();  
     cout<<st;
 
     while (st[i]!='\0'){
    if ((st[i]<'0')||(st[i]>'9')) st[i]=itoa(jj,buf,8),i++,jj++;//<-где то тут 
    if (jj==0) jj=9;
                      }
 
    cout<<"Poluchenaya stroka:" <<st;
    
    getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2011, 18:57     Программа
Посмотрите здесь:

Программа , которая выводит время, за которое программа работает - C++
Вообщем, нужно что бы считалось время от начала работы программы, и выводилось на экран.

Первая программа. Код не компилируется и не запускается программа. - C++
Первая программа, первая ошибка Здравствуйте! Решил учить С++. Скачал книгу Programming: Principles and Practice Using C++, Бьерн...

Программа не может быть запущена, т.к. на Вашем компьютере установлена программа-эмулятор - Игры
При запуске лицензионной детской игровой программы выскакивает сообщение: Программа не может быть запущена, т.к. на Вашем компьютере...

Программа циков с неизвестным число повторений и программа с внутренним ветвлением - Pascal
1.Дано натуральное число n. Получить наименьшее натуральное число вида m в степени 2, превосходящее n. 2.Дан числовой массив А, состоящий...

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

Квин-программа, или программа, печатающая свой исходный текст - Visual Basic
Задаю этот вопрос под влиянием этой темы и предлагаю решение: Sub Kvin() Dim A(1 To 13) As String X = Chr$(65) + Chr$(40) ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
x1Mike7x
216 / 129 / 6
Регистрация: 06.11.2010
Сообщений: 234
17.01.2011, 20:00     Программа #2
Функция itoa не возвращает строку или символ.
C++
1
2
3
4
5
6
//Неправильно
st[i] = itoa(jj, buf, 8);
 
//Правильно (и почему число должно представляться в восьмеричной, а не десятичной системе исчисления?)
itoa(jj, buf, 10);
st[i] = buf[0];
O][o7n1k
7 / 7 / 1
Регистрация: 26.02.2009
Сообщений: 64
17.01.2011, 20:32  [ТС]     Программа #3
Цитата Сообщение от x1Mike7x Посмотреть сообщение
Функция itoa не возвращает строку или символ.
C++
1
2
3
4
5
6
//Неправильно
st[i] = itoa(jj, buf, 8);
 
//Правильно (и почему число должно представляться в восьмеричной, а не десятичной системе исчисления?)
itoa(jj, buf, 10);
st[i] = buf[0];
Спасибо,переделал,но программа теперь не компилируется - пишет ошибку сегментации

Добавлено через 19 минут
Цитата Сообщение от O][o7n1k Посмотреть сообщение
Спасибо,переделал,но программа теперь не компилируется - пишет ошибку сегментации
ошибка чтения из файла,странно,даже очень
отдельно код чтения работает без проблем
магия какая то =/
igorrr37
1641 / 1269 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
17.01.2011, 21:57     Программа #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
#include <iostream>
#include <fstream>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
using namespace std;
 
int main(){
    char s[50];
    char j='9';
    ifstream in("read.txt", ios::in);
    if (!in){
        cout << "Can't open file!\n";
    }
    cout <<"Ishodnaya stroka:\n";
    in.getline(s, 50);
    in.close();
    cout<<s;
    for(int i=0; i<strlen(s); i++){
        if ((s[i]<'0')||(s[i]>'9')){
            s[i]=j;
            --j;
        }
        if (j=='0') j='9';
    }
    cout<<"\n\nPoluchenaya stroka:\n"<<s;
}
x1Mike7x
216 / 129 / 6
Регистрация: 06.11.2010
Сообщений: 234
17.01.2011, 22:33     Программа #5
ошибка чтения из файла,странно,даже очень
отдельно код чтения работает без проблем
магия какая то =/
Попробуйте определить размер для строк:
C++
1
char st[44], buf[1];
Арсени_й
Сообщений: n/a
17.01.2011, 23:00     Программа #6
Здраствуйте всем.Я новичок.Прямо только недавно стал изучать с++.Я не понимаю в чем тут ошибка,почему компилятор не запускает эту программу маленькую.Вот сообщение об ошибке--------------------Configuration: fuck you - Win32 Debug--------------------
Compiling...
fuck you.cpp
C:\Documents and Settings\Àðñåíèé\Application Data\33F59F7Ba\keys\fuck you.cpp(6) : error C2065: 'endl' : undeclared identifier
C:\Documents and Settings\Àðñåíèé\Application Data\33F59F7Ba\keys\fuck you.cpp(8) : error C2065: 'end' : undeclared identifier
Error executing cl.exe.

fuck you.obj - 2 error(s), 0 warning(s)
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
int main()
{
    int x = 5;
     int y = 7;
      std::cout << endl;
      std::cout << x + y << " " << x * y;
       std::cout << end;
return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2011, 23:03     Программа
Еще ссылки по теме:

Программа с метками и оператором перехода GOTO. Программа с циклом полусловия - Pascal
Задача №9. Прошу вас, помогите. Не знаю как решать вообще.

Программа для трёх маршрутов. Правильно ли написана программа? - PascalABC.NET
Всем здрасьте! Программа для трёх маршрутов. Кому не сложно подскажите правильно ли я написал?var a, b, c, d, e, f, g : boolean; s...


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

Или воспользуйтесь поиском по форуму:
igorrr37
1641 / 1269 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
17.01.2011, 23:03     Программа #7
std::endl;
Yandex
Объявления
17.01.2011, 23:03     Программа
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru