Курсовая работа: Конструирование моделей лексического и синтаксического анализа

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

968. if (num_tex[j] == ' ' || num_tex[j] == '\n')

969. {

970. add_key(token, ref v_k); token = null; num_si = 0;

971. }

972. else

973. {

974. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

975. else if (f_synt(num_tex[j])) { add_key(token, ref v_k); token = null; num_si = 0; j-; }

976. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

977. }

978. break;

979. case 46:

980. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

981. else {

982. if (num_tex[j] == 'r') { num_si = 47; token += Convert.ToString(num_tex[j]); }

983. else

984. {

985. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

986. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

987. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

988. }

989. }

990. break;

991. case 47:

992. if (num_tex[j] == ' ' || num_tex[j] == '\n')

993. {

994. add_key(token, ref v_k); token = null; num_si = 0;

995. }

996. else

997. {

998. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

999. else if (f_synt(num_tex[j])) { add_key(token, ref v_k); token = null; num_si = 0; j-; }

1000. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1001. }

1002. break;

1003. case 48:

1004. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1005. else {

1006. if (num_tex[j] == 't') { num_si = 49; token += Convert.ToString(num_tex[j]); }

1007. else

1008. {

1009. if (num_tex[j] == 'p') { num_si = 51; token += Convert.ToString(num_tex[j]); }

1010. else

1011. {

1012. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1013. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1014. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1015. }

1016. }

1017. }

1018. break;

1019. case 49:

1020. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1021. else {

1022. if (num_tex[j] == 'd') { num_si = 50; token += Convert.ToString(num_tex[j]); }

1023. else

1024. {

1025. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1026. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1027. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1028. }

1029. }

1030. break;

1031. case 50:

1032. if (num_tex[j] == ' ' || num_tex[j] == '\n')

1033. {

1034. add_key(token, ref v_k); token = null; num_si = 0;

1035. }

1036. else

1037. {

1038. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1039. else if (f_synt(num_tex[j])) { add_key(token, ref v_k); token = null; num_si = 0; j-; }

1040. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1041. }

1042. break;

1043. case 51:

1044. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1045. else {

1046. if (num_tex[j] == 'a') { num_si = 52; token += Convert.ToString(num_tex[j]); }

1047. else

1048. {

1049. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1050. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1051. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1052. }

1053. }

1054. break;

1055. case 52:

1056. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1057. else

1058. {

1059. if (num_tex[j] == 'c') { num_si = 53; token += Convert.ToString(num_tex[j]); }

1060. else

1061. {

1062. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1063. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1064. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1065. }

1066. }

1067. break;

1068. case 53:

1069. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1070. else {

1071. if (num_tex[j] == 'e') { num_si = 54; token += Convert.ToString(num_tex[j]); }

1072. else

1073. {

1074. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1075. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1076. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1077. }

1078. }

1079. break;

1080. case 54:

1081. if (num_tex[j] == ' ' || num_tex[j] == '\n')

1082. {

1083. add_key(token, ref v_k); token = null; num_si = 0;

1084. }

1085. else

1086. {

1087. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1088. else if (f_synt(num_tex[j])) { add_key(token, ref v_k); token = null; num_si = 0; j-; }

1089. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1090. }

1091. break;

1092. case 55:

1093. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1094. else {

1095. if (num_tex[j] == 'e') { num_si = 56; token += Convert.ToString(num_tex[j]); }

1096. else

1097. {

1098. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1099. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1100. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1101. }

1102. }

1103. break;

1104. case 56:

1105. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1106. else {

1107. if (num_tex[j] == 'е') { num_si = 57; token += Convert.ToString(num_tex[j]); }

1108. else

1109. {

1110. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1111. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1112. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1113. }

1114. }

1115. break;

1116. case 57:

1117. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1118. else {

1119. if (num_tex[j] == 'u') { num_si = 58; token += Convert.ToString(num_tex[j]); }

1120. else

1121. {

1122. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1123. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1124. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1125. }

1126. }

1127. break;

1128. case 58:

1129. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1130. else {

1131. if (num_tex[j] == 'r') { num_si = 59; token += Convert.ToString(num_tex[j]); }

1132. else

1133. {

1134. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1135. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1136. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1137. }

1138. }

1139. break;

1140. case 59:

1141. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1142. else {

1143. if (num_tex[j] == 'n') { num_si = 60; token += Convert.ToString(num_tex[j]); }

1144. else

1145. {

1146. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1147. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1148. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1149. }

1150. }

1151. break;

1152. case 60:

1153. if (num_tex[j] == ' ' || num_tex[j] == '\n')

1154. {

1155. add_key(token, ref v_k); token = null; num_si = 0;

1156. }

1157. else

1158. {

1159. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1160. else if (f_synt(num_tex[j])) { add_key(token, ref v_k); token = null; num_si = 0; j-; }

1161. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1162. }

1163. break;

1164. case 61:

1165. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1166. else {

1167. if (num_tex[j] == 's') { num_si = 62; token += Convert.ToString(num_tex[j]); }

1168. else

1169. {

1170. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1171. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1172. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1173. }

1174. }

1175. break;

1176. case 62:

1177. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1178. else {

1179. if (num_tex[j] == 'i') { num_si = 63; token += Convert.ToString(num_tex[j]); }

1180. else

1181. {

1182. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1183. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1184. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1185. }

1186. }

1187. break;

1188. case 63:

1189. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1190. else {

1191. if (num_tex[j] == 'n') { num_si = 64; token += Convert.ToString(num_tex[j]); }

1192. else

1193. {

1194. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1195. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1196. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1197. }

1198. }

1199. break;

1200. case 64:

1201. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1202. else {

1203. if (num_tex[j] == 'g') { num_si = 65; token += Convert.ToString(num_tex[j]); }

1204. else

1205. {

1206. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1207. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1208. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1209. }

1210. }

1211. break;

1212. case 65:

1213. if (num_tex[j] == ' ' || num_tex[j] == '\n')

1214. {

1215. add_key(token, ref v_k); token = null; num_si = 0;

1216. }

1217. else

1218. {

1219. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1220. else if (f_synt(num_tex[j])) { add_key(token, ref v_k); token = null; num_si = 0; j-; }

1221. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1222. }

1223. break;

1224. case 66:

1225. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1226. else {

1227. if (num_tex[j] == 'a') { num_si = 67; token += Convert.ToString(num_tex[j]); }

1228. else

1229. {

1230. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1231. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1232. else { num_si = 85; token += Convert.ToString(num_tex[i]); }

1233. }

1234. }

1235. break;

1236. case 67:

1237. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1238. else {

1239. if (num_tex[j] == 'm') { num_si = 68; token += Convert.ToString(num_tex[j]); }

1240. else

1241. {

1242. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1243. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1244. else { num_si = 85; token += Convert.ToString(num_tex[i]); }

1245. }

1246. }

1247. break;

1248. case 68:

1249. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_ident(token, ref v_id); token = null; num_si = 0; }

1250. else {

1251. if (num_tex[j] == 'e') { num_si = 0; token += Convert.ToString(num_tex[j]); }

1252. else

1253. {

1254. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1255. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1256. else { num_si = 85; token += Convert.ToString(num_tex[i]); }

1257. }

1258. }

1259. break;

1260. case 69:

1261. if (num_tex[j] == ' ' || num_tex[j] == '\n')

1262. {

1263. add_key(token, ref v_k); token = null; num_si = 0;

1264. }

1265. else

1266. {

1267. if (num_tex[j] == '.') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1268. else if (f_synt(num_tex[j])) { add_ident(token, ref v_id); token = null; num_si = 0; j-; }

1269. else { num_si = 85; token += Convert.ToString(num_tex[j]); }

1270. }

1271. break;

1272. case 70:

1273. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_synt(token, ref v_sy); token = null; num_si = 0; }

1274. else

1275. {

1276. if (!alf(num_tex[j])) { add_synt(token, ref v_sy); token = null; num_si = 0; j-; }

1277. else

1278. {

1279. if (numb(num_tex[j])) { add_synt(token, ref v_sy); token = null; num_si = 0; j-; }

1280. else

1281. {

1282. if (f_synt(num_tex[j])) { add_synt(token, ref v_sy); token = null; num_si = 0; j-; }

1283. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1284. }

1285. }

1286. }

1287. break;

1288. case 71:

1289. if (num_tex[j] == ' ' || num_tex[j] == '\n')

1290. {

1291. add_nu(token, ref v_nu); token = null; num_si = 0;

1292. }

1293. else

1294. {

1295. if (numb(num_tex[j])) { num_si = 71; token += Convert.ToString(num_tex[j]); }

1296. else

1297. {

1298. if (num_tex[j] == '.') { num_si = 73; token += Convert.ToString(num_tex[j]); }

1299. else

1300. {

1301. if (num_tex[j] == 'e' || num_tex[j] == 'E') { num_si = 74; token += Convert.ToString(num_tex[j]); }

1302. else

1303. {

1304. if (!alf(num_tex[j])) { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1305. else

1306. {

1307. if (f_synt(num_tex[j])) { add_nu(token, ref v_nu); token = null; num_si = 0; j-; }

1308. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1309. }

1310. }

1311. }

1312. }

1313. }

1314. break;

1315. case 72:

1316. if (num_tex[j] == ' ' || num_tex[j] == '\n') { num_si = 78; token += Convert.ToString(num_tex[j]); }

1317. else

1318. {

1319. if (numb(num_tex[j]) ) { num_si = 71; token += Convert.ToString(num_tex[j]); }

1320. else

1321. {

1322. if (num_tex[j] == '=' || num_tex[j] == '-') { num_si = 78; token += Convert.ToString(num_tex[j]); }

1323. else

1324. {

1325. add_unId(num_tex, ref j, i); token = null; num_si = 0;

1326. }

1327. }

1328. }

1329. break;

1330. case 73:

1331. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1332. else

1333. {

1334. if (numb(num_tex[j])) { num_si = 76; token += Convert.ToString(num_tex[j]); }

1335. else

1336. {

1337. add_unId(num_tex, ref j, i); token = null; num_si = 0;

1338. }

1339. }

1340. break;

1341. case 74:

1342. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1343. else

1344. {

1345. if (num_tex[j] == '+' || num_tex[j] == '-') { num_si = 73; token += Convert.ToString(num_tex[j]); }

1346. else

1347. { add_unId(num_tex, ref j, i); token = null; num_si = 0;

1348. }

1349. }

1350. break;

1351. case 76:

1352. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_nu(token, ref v_nu); token = null; num_si = 0; }

1353. else

1354. {

1355. if (numb(num_tex[j])) { num_si = 76; token += Convert.ToString(num_tex[j]); }

1356. else

1357. {if (f_synt(num_tex[j])) { add_nu(token, ref v_nu); token = null; num_si = 0; j-; }

1358. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1359. }

1360. }

1361. break;

1362. case 77:

1363. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1364. else

1365. {

1366. if (num_tex[j]=='+') { num_si = 78; token += Convert.ToString(num_tex[j]); }

1367. else

1368. {if (num_tex[j] == '=') { num_si = 78; token += Convert.ToString(num_tex[j]); }

1369. else

1370. {

1371. if (f_synt(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; num_si = 0; j-; }

1372. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1373. }

1374. }

1375. }

1376. break;

1377. case 78:

1378. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_op(token, ref v_op); token = null; num_si = 0; }

1379. else if (!alf(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1380. else if (numb(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1381. else if (f_synt(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1382. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1383. break;

1384. case 79:

1385. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_op(token, ref v_op); token = null; num_si = 0; }

1386. else

1387. {

1388. if (num_tex[j] == '=') { num_si = 82; token += Convert.ToString(num_tex[j]); }

1389. else if (!alf(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1390. else if (numb(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1391. else if (f_synt(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1392. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1393. }

1394. break;

1395. case 80:

1396. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_op(token, ref v_op); token = null; num_si = 0; }

1397. else

1398. {

1399. if (num_tex[j] == '=') { num_si = 82; token += Convert.ToString(num_tex[j]); }

1400. else if (!alf(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1401. else if (numb(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1402. else if (f_synt(num_tex[j])) { add_op(token, ref v_op); token = null; num_si = 0; j-; }

1403. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1404. }

1405. break;

1406. case 82:

1407. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_cond(token, ref v_con); token = null; num_si = 0; }

1408. else

1409. if (!alf(num_tex[j])) { add_cond(token, ref v_con); token = null; num_si = 0; j-; }

1410. else if (numb(num_tex[j])) { add_cond(token, ref v_con); token = null; num_si = 0; j-; }

1411. else if (f_synt(num_tex[j])) { add_cond(token, ref v_con); token = null; num_si = 0; j-; }

1412. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1413. break;

1414. case 83:

1415. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_cond(token, ref v_con); token = null; num_si = 0; }

1416. else

1417. {

1418. if (num_tex[j] == '<') { num_si = 78; token += Convert.ToString(num_tex[j]); }

1419. else

1420. {

1421. if (num_tex[j] == '=') { num_si = 82; token += Convert.ToString(num_tex[j]); }

1422. else if (numb(num_tex[j])) { add_cond(token, ref v_con); token = null; num_si = 0; j-; }

1423. else if (f_synt(num_tex[j])) { add_cond(token, ref v_con); token = null; num_si = 0; j-; }

1424. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }

1425. }

1426. }

1427. break;

1428. case 84:

1429. if (num_tex[j] == ' ' || num_tex[j] == '\n') { add_cond(token, ref v_con); token = null; num_si = 0; }

1430. else

1431. {

1432. if (num_tex[j] == '>') { num_si = 78; token += Convert.ToString(num_tex[j]); }

1433. else

1434. {

1435. if (num_tex[j] == '=') { num_si = 82; token += Convert.ToString(num_tex[j]); }

1436. else if (numb(num_tex[j])) { add_cond(token, ref v_con); token = null; num_si = 0; j-; }

1437. else if (f_synt(num_tex[j])) { add_cond(token, ref v_con); token = null; num_si = 0; j-; }

1438. else { add_unId(num_tex, ref j, i); token = null; num_si = 0; }