Форум программистов, компьютерный форум, киберфорум
Наши страницы
PascalABC.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.68
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
#1

Компилятор - PascalABC.NET

17.06.2014, 20:17. Просмотров 7504. Ответов 16
Метки нет (Все метки)

Что за?!? Почему данная программа не работает на turbo pascal?!?!? Что за различия между работы компиляторами? Если в abc.net компиляция идет идеально, почему она на турбо не хочет компилировать? Ааааааааааа бесит...
Pascal
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
var lineLength, lineCount,ll,lc,i,temp,page: integer;
    p,c: char;
    fin,fout: Text;
    isNum: boolean;
    
    
begin
  write('Символов на строку: ');
  readln(lineLength);
  write('Строк на страницу: ');
  readln(lineCount);
  write('Символ разделителя страницы: ');
  readln(p);
  
  assign(fin,'input.txt');
  reset(fin);
  assign(fout,'output.txt');
  rewrite(fout);
  ll:=0;
  lc:=0;
  page:=1;
  isNum:=false;
  writeln(fout,p,page,p);
  page:=page+1;
  while(not eof(fin)) do
  begin
     read(fin,c);
     if lc=lineCount then
     begin
        writeln(fout,p,page,p);
        page:=page+1;
        lc:=0;
     end;
     for i:=0 to 9 do
     begin
        temp:=ord(c)-48;
        if (temp=i) then
        begin    
            isNum:=true;
            c:=chr(0);
        end;
     end;
     if (c=char(10)) then c:=char(0);
     if (c=char(13)) then c:=char(0);
     write(fout,c);
     ll:=ll+1;
     if ll=lineLength then
     begin
      writeln(fout,'');
      lc:=lc+1;
      ll:=0;
     end;
     
     isNum:=false;
  end;
  close(fout);
  close(fin);
end.

http://www.cyberforum.ru/pascalabc-net/thread1716749.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2014, 20:17
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Компилятор (PascalABC.NET):

Online компилятор
Здравствуйте! Подскажите, существует ли онлайн компилятор PascalABC или...

Компилятор крашится при компиляции модуля
Доброго времени суток. Задача состоит в создании модуля для работы с данными...

Компилятор PascalABC.NET не сохраняет код в редакторе форм
Здравствуйте! Подскажите, пожалуйста! Есть проект Project1. В нем unit, который...

Компилятор
Добрый вечер. Подскажите компилятор (IDE не желательно) для паскаль, с...

Компилятор Pascal
Есть ли компилятор Pascal для мобильных телефонов?

16
pavelDev
41 / 41 / 25
Регистрация: 13.11.2013
Сообщений: 182
Записей в блоге: 1
17.06.2014, 20:25 #2
на какой строке пишет ошибку?
0
Sergio Leone
2462 / 1107 / 579
Регистрация: 07.06.2014
Сообщений: 3,259
17.06.2014, 20:26 #3
Цитата Сообщение от ubuman95 Посмотреть сообщение
Почему данная программа не работает на turbo pascal?!?!?
в чём проявляется неработоспособность программы? (я проверил в TurboPascal 7.0 под DosBox - всё работает!)
Прикладывайте входной и выходной файл (укажите, какие параметры вводили при запуске).

p.s. вот только не понимаю, зачем Вы символу #0 присваиваете? Вы думаете, что символ с нулевым кодом будет хорошо смотреться в выходном файле.

И ещё, на будущее, задание своё к программе прикладывайте. Иначе есть вероятность, что Вы не ту задачу и не так решаете!
0
Новичок
Модератор
1480 / 946 / 457
Регистрация: 17.07.2012
Сообщений: 4,888
Завершенные тесты: 3
17.06.2014, 20:27 #4
Цитата Сообщение от ubuman95 Посмотреть сообщение
почему она на турбо не хочет компилировать?
Какие ошибки выдает? На Free Pascal(а они очень похожи с Turbo хотя разница между ними есть) компилируется без ошибок.
0
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
17.06.2014, 21:51  [ТС] #5
Компилятор

"Скопировать один файл в другой, разбив его на страницы указанного размера и удалив все числа, если они имеются в исходном файле. Каждая страница имеет свой порядковый номер и заключена в рамку, составленную из указываемого в диалоге символа." Прошу прощения... ПРосто в паскаль абс работает, а во фри нет
0
Новичок
Модератор
1480 / 946 / 457
Регистрация: 17.07.2012
Сообщений: 4,888
Завершенные тесты: 3
17.06.2014, 21:54 #6
Цитата Сообщение от ubuman95 Посмотреть сообщение
а во фри нет
Цитата Сообщение от Новичок Посмотреть сообщение
На Free Pascal(а они очень похожи с Turbo хотя разница между ними есть) компилируется без ошибок.
Ну киньте снимок экрана.
0
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
17.06.2014, 22:02  [ТС] #7
Бред, ссылка выше? Или ссылками кидать незя?
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25603 / 17156 / 6824
Регистрация: 22.10.2011
Сообщений: 30,355
Записей в блоге: 6
17.06.2014, 22:21 #8
Цитата Сообщение от ubuman95 Посмотреть сообщение
а во фри нет
Не верю:
0
Миниатюры
Компилятор  
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
17.06.2014, 22:27  [ТС] #9
почему у меня то так? Пишет ошибку?!? аааа =(
0
Новичок
Модератор
1480 / 946 / 457
Регистрация: 17.07.2012
Сообщений: 4,888
Завершенные тесты: 3
17.06.2014, 22:30 #10
Скорее всего потому что вы код ручками писали там и не так написали как код расположенный в первом сообщении,я прав?
0
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
17.06.2014, 22:44  [ТС] #11
Ссорь, прикол в том что я кинул черновой вариант, вот оригинал, и косяк с этим. В pascalABC.NET все работает, в ABC, и free не работает...
Pascal
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
var lineLength, lineCount,ll,lc,i,temp,page,pLength: integer;
    p,c: char;
    fin,fout: Text;
    isNum: boolean;
    s: string;
    
begin
  write('Символов на строку: ');
  readln(lineLength);
  write('Строк на страницу: ');
  readln(lineCount);
  write('Символ разделителя страницы: ');
  readln(p);
  
  assign(fin,'input.txt');
  reset(fin);
  assign(fout,'output.txt');
  rewrite(fout);
  ll:=0;
  lc:=lineCount;
  page:=1;
  isNum:=false;
  write(fout,p);
  while(not eof(fin)) do
  begin
     read(fin,c);
     
     if lc=lineCount then
     begin
        str(page,s);
        pLength:=Length(s);
        s:='';
        for i:=0 to lineLength do
          s:=s+p;
        writeln(fout,s);
        s:=p+page;
        for i:=0 to lineLength-pLength-1 do
          s:=s+' ';
        writeln(fout,s,p);
        page:=page+1;
        lc:=0;
        write(fout,p);
     end;
     
     for i:=0 to 9 do
     begin
        temp:=ord(c)-48;
        if (temp=i) then
        begin    
            isNum:=true;
            c:=chr(0);
        end;
     end;
     
     if (c=char(10)) then c:=char(0);
     if (c=char(13)) then c:=char(0);
     
     write(fout,c);
     ll:=ll+1;
     
     if ll=lineLength then
     begin
      writeln(fout,p);
      write(fout,p);
      lc:=lc+1;
      ll:=0;
     end;
     
     isNum:=false;
  end;
  
  s:='';
  for i:=ll to lineLength-1 do
    s:=s+' ';
  writeln(fout,s,p);
  s:='';
  for i:=0 to lineLength+1 do
    s:=s+p;
  writeln(fout,s);
  
  close(fout);
  close(fin);
end.
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25603 / 17156 / 6824
Регистрация: 22.10.2011
Сообщений: 30,355
Записей в блоге: 6
17.06.2014, 22:51 #12
PascalABC.NET - это как морская свинка. Вроде и не морская, и вроде не свинка... От Паскаля тут только begin/end и осталось. А из Шарпа зато пришли неявные преобразования типа. В твоем случае - из Integer в String. Нормальный компилятор Паскаля это пропускать не должен, что FPC и делает...
0
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
17.06.2014, 23:25  [ТС] #13
хахахаха, конечно пример который вы привели ооочень сильный) Час попробую исправить...
0
Sergio Leone
2462 / 1107 / 579
Регистрация: 07.06.2014
Сообщений: 3,259
17.06.2014, 23:28 #14
ubuman95, рискую попасть пальцем в небо, ибо не понимаю Ваш алгоритм,
но, похоже, что проблемную строчку:
Pascal
1
s:=p+page;
можно заменить на
Pascal
1
s := p + IntToStr(page);
0
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
18.06.2014, 00:46  [ТС] #15
промазал)
0
Новичок
Модератор
1480 / 946 / 457
Регистрация: 17.07.2012
Сообщений: 4,888
Завершенные тесты: 3
18.06.2014, 00:50 #16
ubuman95, чтобы работал IntToStr нужно первой строкой
Pascal
1
uses SysUtils;
Добавлено через 1 минуту
И, да Sergio Leone правильно заметил, там ошибка.
0
ubuman95
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 19
18.06.2014, 01:04  [ТС] #17
Цитата Сообщение от Новичок Посмотреть сообщение
uses SysUtils;
Все равно говорит неизвестный идентификатор,
я лучше стандартным паскалевским Str переведу
0
18.06.2014, 01:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.06.2014, 01:04
Привет! Вот еще темы с решениями:

Компилятор выдаёт ошибку.
Program z1; var n:integer; begin Writeln('Архитектор Исаакиевского...

Компилятор Pascal для Mac OS
Подскажите компилятор Pascal для Mac OS Мне надо компилировать не только сами...

Мобильный компилятор для паскаля
доброго времени суток. Подскажите действительно рабочий компилятор для паскаля...

Где найти 32-х или 64-х битный компилятор
Народ где взять 32-х или 64-х битный компилятор на паскаль, а то в for windows...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

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