Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Си в Паскаль


Рекомендуемые сообщения

Многие наверно когда учились проходили вот такое задание:Преобразовать строку, содержащую выражение на Си с операциями (=,==,!=,a+=,a-=) в строку Паскаль с операциями...так вот. создаю два массива(string).напр., после for в if(c[]=='='&c[i+1]=='=') p[]=p[]+'=';

говорят вроде правильно,но надо все в одном массиве...поможет кто? :D

Ссылка на комментарий
Поделиться на другие сайты

mesmer

Можно поконкретнее и на нормальном русском языке? Тебе нужно Си-строку в паскаль-строку? Тогда почему ты приводишь в примере си-строку и почему это "вроде правильно"?

Ссылка на комментарий
Поделиться на другие сайты

Сергей Плоткин

Как я понял, имеется в виду программа на C, преобразующая строку с выражением, записанным на C, в строку c аналогичным выражением или оператором (теоретически - даже не -ом, а -ами, не знаю, требуется ли это) на Pascal. Причем программа должна использовать для работы только один массив, преобразуя строку прямо в нем (??). Это мазохизм, по-моему... :blush2:

Ссылка на комментарий
Поделиться на другие сайты

Тролль

Причем программа должна использовать для работы только один массив, преобразуя строку прямо в нем (??). Это мазохизм, по-моему...

Как ни странно, нас так и учили :D

void main(){       char c[80]; // строка       cin >> c;       int len; // длина строки       for (len = 0; c[len] != 0; len++);       for (int i = 0; i < len; i++)       {	 // != заменяем на <>	 if (c[i] == '!' && c[i+1] == '=')	 {   c[i] = '<';   c[i+1] = '>';   continue;	 }	 // == заменяем на =	 if (c[i] == '=' && c[i+1] == '=')	 {   // "Сдвигаем" массив   for (int j = i; j < len-1; j++)  	 c[j] = c[j+1];   c[--len] = 0;   continue;	 }           // = заменяем на :=           if (c[i] == '=')           {   // "Раздвигаем" массив               len++;               for (int j = len; j > i; j--)  	 c[j] = c[j-1];               c[i] = ':';   c[i+1] = '=';   i++;   continue;	 }           } cout << c << endl; getch();}

Писал сам, поэтому, если есть хоть какие, хоть самые мелкие замечания, Я ХОЧУ ОБ ЭТОМ ЗНАТЬ. Просьба такая :)

Добавлено : [mergetime]1102345877[/mergetime]

Мда... с таким форматированием, как сдесь, понять ничего не получится. Пробелы и tab'ы заменились на что-то странное :blush2:

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...