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

Транслятор с С в Паскаль - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Самые близкие точки. На числовой прямой задано n точек, найти две ближайшие. http://www.cyberforum.ru/cpp-beginners/thread517596.html
Какой код к этой задаче?Ничего не могу сделать умного((( Антон в школе начал изучать математику. Его внимание привлекло новое для него понятие числовой прямой. Антон быстро научился вычислять расстояния между двумя точками на этой прямой, задавать отрезки и интервалы на ней. Готовясь к контрольной работе, Антон столкнулся со следующей задачей: «На числовой прямой задано n точек. Необходимо...
C++ Потоки и запоминание итераторов Жду помощи... хочу, чтобы 2 потока запоминали итераторы, чтобы потом можно было свапнуть разыменованные иттераторы...но проблема с синхронизацией. Как вызывать события? как они должны выглядеть...и..есть ли смысл заморачиваться с этим? Код получается примерно такой: #include "stdafx.h" #include <Windows.h> #include <vector> #include <iostream> #include <algorithm> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread517590.html
Постройте графики функций и найдите точки их пересечения. C++
Помогите решить на C++: Постройте графики функций и найдите точки их пересечения. y=tgx, y=1;
C++ Используя программу вычисления транспонированной матрицы S^T
Помогите решить задачу на С++: Используя программу вычисления транспонированной матрицы S^T, найдите для данных матриц A, B, C размерностью 3x3 значение выражения (A+B)^T-(A+C)^T+(B+C)^T. Заранее благодарен!
C++ Пары в одномерном массиве http://www.cyberforum.ru/cpp-beginners/thread517578.html
Составить программу, которая отыскивает среди пар элементов одномерного массива М те, разность между элементами которых есть величина наибольшая для данного массива. Т.е. нужно сначала найти максимум, а затем через условие проверить, если разность=максимуму, то это пара? так? Например: if (A-A=max) max=max+1 Но мне нужно что бы пары отыскивались по всему массиву, а не только со следующим...
C++ Даны координаты двух Даны координаты двух противоположных вершин прямоугольника: (x1, y1), (x2, y2). Стороны прямоугольника параллельны осям координат. Найти периметр и площадь данного прямоугольника. #include <iostream> #include<math.h> using namespace std; int main() { double x1,y1,x2,y2,P,A,sum; подробнее

Показать сообщение отдельно
aw_rabbit
 Аватар для aw_rabbit
146 / 103 / 6
Регистрация: 08.02.2012
Сообщений: 202
13.03.2012, 16:49     Транслятор с С в Паскаль
В этой теме похожая задача

Задача сложная, но решается легко при наличии достаточного количества теоретических знаний. Сначала пишется сканер (лексический анализатор или лексер) детерминированным конечным автоматом, потом парсер (синтаксический анализатор) рекурсивным спуском, магазинным автоматом, можно еще алгоритмом Кока — Янгера — Касами, но для него грамматика должна быть в нормальной форме Хомского. Потом семантический анализатор и только потом дописывается сам транслятор.

Абстрактное синтаксическое дерево строится из дерева разбора, которое получается в результате работы парсера. Для учебных задач обычно достаточно синтаксически управляемой трансляции.

Сканер бьет код на токены или лексемы, приписывая им класс (ключевое слово, строка, переменная, число, символы). Парсер работает уже только с токенами. Он должен проверить входной код на наличие ошибок.

PS: на изучение теории обычно уходит год.

Добавлено через 2 минуты
Цитата Сообщение от diagon Посмотреть сообщение
А это возможно вообще?
Ага, facebook php в c++ странслировал
http://developers.facebook.com/blog/post/358/
 
Текущее время: 07:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru