8 / 8 / 0
Регистрация: 10.12.2009
Сообщений: 15
1

выдает ошибку,а работает только при n>числа компонент файла

12.12.2009, 12:42. Показов 677. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
задан числовой файл F. определить произведение первых N ненулевых компонент файла и сумму последних N компонент. сформировать из файла вектор B(10), в конец которого дописать сумму,а затем произведение. вектор распечатать. если формирование вектора невозможно, то сделать об этом сообщение.

помогите найти ошибку:
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
 program lab4;
type
TV=array[1..10] of real;
TF=file of real;
var
B:TV;
F:TF;
n,i,k:byte;
s,p:real;
bool:boolean;
procedure vvodF(var H:TF;name:char);
var
a:real;
begin
rewrite(H);
writeln('priznak konza vvoda- 999');
writeln('vvedite novoe chislo');
readln(a);
while a<>999 do
begin
write(f,a);
writeln('vvedite ocherednoe chislo');
read(a);
end;
close(f);
end;
function Pr(var f:TF;n:integer):real;
var
a,p:real;
begin
reset(f);
p:=1;
k:=0;
while not eof(f) or (k<>n) do
begin
read(f,a);
if a<>0 then
begin
p:=p*a;
k:=k+1
end
end;
if k=n then
pr:=p
else
begin
writeln('nevozmozhno podschitat proizvedenie');
pr:=0;
end;
close(f);
end;
function sum(var f:TF;n:integer):real;
var
a,s:real;
i:byte;
begin
reset(f);
s:=0;
seek(f,filesize(f)-1);
for i:=1 to n do
begin
read(f,a);
s:=s+a;
seek(f,filepos(f)-2);
end;
sum:=s;
close(f);
end;
function FormV(var f:TF;x:TV;s,p:real):boolean;
var
a:real;
i:byte;
begin
reset(f);
if filesize(f)>7 then
begin
for i:=1 to 8 do
begin
read(f,a);
x[i]:=a;
end;
x[9]:=s;
x[10]:=p;
bool:=true
end 
else
begin
writeln('nevozmozhno sformirovat vector');
bool:=false;
end;
close(f);
end;
procedure PrintV(const x:TV);
var
i:byte;
begin
for i:=1 to 9 do
writeln('x[',i,']=',x[i]);
if x[10]= 0 then
else
writeln(x[i]);
end;
 
BEGIN
assign(f,'f.dat');
vvodF(f,'f');
write('n=');
readln(n);
reset(f);
if filesize(f)<n then
begin
writeln('nevozmozhno podschitat summy/proizvedenie');
p:=0;
end
else
begin
p:=pr(f,n);
s:=sum(f,n);
end;
bool:=formV(F,b,s,p);
if bool then
printV(b);
END.
Добавлено через 5 минут
когда ввожу n,то выскакивает табличка :программа такая-то такая exited with exitcode=100....а когда выплывает результат программы,то пишет runtime error...что делать???
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2009, 12:42
Ответы с готовыми решениями:

При запуске из среды программа работает, при запуске выполняемого файла выдает ошибку
Добавлено через 1 минуту 35 секунд как исправить ошибки в названии темы? там должно было быть...

Компонент TZipForge выдает ошибку при архивации
Доброе утро. Пишу такой код type ZipForge1: TZipForge; begin ZipForge1.FileName :=...

При запросе "Where id = 1" все работает нормально. Но как только "Where id = h", то выдает ошибку
При запросе из таблицы БД MySQL &quot;Where id = 1&quot; все работает нормально. Но как только &quot;Where id =...

Mysql_fetch_array() выдает на странице ошибку, но при этом работает
Доброго времени суток! Я сам еще на стадии ученика, простите за глупый вопрос. На форуме ответа не...

0
12.12.2009, 12:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.12.2009, 12:42
Помогаю со студенческими работами здесь

При попытке открытия файла выдаёт ошибку
Здравствуйте. Такая проблема - при попытке открытия файла выдаёт ошибку. using System; using...

Выдает ошибку при загрузке файла с сайта
Для загрузке использую: My.Computer.Network.DownloadFile(&quot;Сайт&quot;, &quot;Куда загружает&quot;) Сайт на...

Выдает ошибку при чтении и записи файла
Выдает ошибку при чтении и при записи файла. Дебагер указывает соответственно на строку ReadFile...

Программа работает, но при выводе определенной комбинации выдает ошибку
Помогите начинающему программисту :) Программа работает, но если ввести все непростые числа, то...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru