Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Конвертер из Паскаля в Си 
:(
    Опции темы
TheBeginner
Дата 8.1.2015, 22:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 16.2.2014

Репутация: нет
Всего: нет



Дан файл написанный на Паскале в формате txt,программа должна его считывать и выводить на экран,а потом при нажатии кнопки конвертировать на язык Си и сохранять в другой файл.

Часть сам реализовал,часть нашёл в интернете.Но программа не работает(Она компилируется но не работает корректно
).
-Текст с файла в консоль не выводится
-Не конвертирует(пусть даже не все функции написал).

Надеюсь на ваши советы,помощь и подсказки

Код не вместился,залил отдельно.

12-ого надо показывать.

Это сообщение отредактировал(а) TheBeginner - 8.1.2015, 22:11

Присоединённый файл ( Кол-во скачиваний: 14 )
Присоединённый файл  konverter.txt 21,37 Kb
PM MAIL   Вверх
TheBeginner
Дата 9.1.2015, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 16.2.2014

Репутация: нет
Всего: нет



Проблему с выводом содержимого файла в консоль решилась..

Осталась проблема с конвертацией

Немного подправил программу.

Осталось понять как мой file1.txt привязать к функции перевода с одного языка другой.

Это сообщение отредактировал(а) TheBeginner - 9.1.2015, 12:52

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  konverter.txt 21,59 Kb
PM MAIL   Вверх
_zorn_
Дата 9.1.2015, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 21.8.2007

Репутация: нет
Всего: 12



Студенты... Конвертаторы им подавай. А зачем ?
Си не сложный язык, паскаль еще проще...

ЗЫ. Заодно поищи конвертатор строительных материалов в столы...

Это сообщение отредактировал(а) _zorn_ - 9.1.2015, 12:31
PM MAIL   Вверх
TheBeginner
Дата 9.1.2015, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 16.2.2014

Репутация: нет
Всего: нет



Потому что курсовые распределили рандомно,кому-то повезло а кому-то нет.
PM MAIL   Вверх
TheBeginner
Дата 10.1.2015, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 16.2.2014

Репутация: нет
Всего: нет



Задачу упростили теперь сказали что можно создать 2 массива - 1 со словами на Паскале,2-ой со словами Си и сделать одинаковые индексы к ним,и реализовать такой алгоритм 

1. Прочитать строку (до первого пробельного символа) из файла с программой на Паскале. 
2. Проверить, является ли оно ключевым словом, т.е. есть ли такая строка в массиве. Если есть, то каков ее индекс в массиве (ноль, один, …).
3. В файл с программой на Си записать сроку из массива с индексом, полученным в пункте 2.

я часть уже сделал...

но с заменой на одинаковые индексы пока сложно..(кто что может посоветовать и где поискать)...код я сам пишу..


Код

class Converter
{
public:
    char s[256]; //идент-р переменной
    int tp; 
    int tid;
    char instr[1000],
    outstr[1000];
int inlen,outlen,inpos;//текущие позиции (строки входные, выходные, позиция в строке входной)
int koper1,koper2,ker;//эти переменные считают количество операторов во входном, выходном файле и кол-во ошибок
int lenght_world; //длина "слова"
int wtype; //тип "слова"
int wnumf; //0 - целое число, 1 - дробное
int dt; //размер отступа (от начала строки)
Converter  *next,*np, *p,*vars, *lvars,*head, *ntype,*typeslist; 

    // здесь идет проверка на ключевое слово,
    // сравниваются полученное нами слово со словом из списка
    // и если да, то возвращается номер слова в списке
    // проверка на ключевое слово
    ///int Converter::funckeyW()


int Converter::funckeyW(char s)
    {
        ifstream fin("file.txt");
        if (!fin.is_open())
            cout<<"Файл отсутствует!\n";
        else
        {
            while (!fin.eof())
            {
            while (fin!='\0')
            {
            fin.getline(instr,s);
            }
        for (int i=0; i<Key_WordsP_num; i++)
        {// просмотр всего массива Key_Words_num
            for (int i=0; i<Key_WordsC_num; i++)
            {
                if(Key_WordsP_num[KeyW]==Key_WordsC_num[KeyWC])
                {
                    ofstream fout;
        fout.open("res2.txt");
        fout<<i;
        fout.close();
                }
            }
        }    
            }
            }
        return 0;    
}

Это сообщение отредактировал(а) TheBeginner - 10.1.2015, 20:36
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0636 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.