С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 5
1

Найти сумму квадратов компонент файла f. Записать эту сумму в конец файла

14.12.2012, 16:53. Показов 1765. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Найти: Сумму квадратов компонент файла f. Записать эту сумму в конец файла. Отсортировать файл по возрастанию.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.12.2012, 16:53
Ответы с готовыми решениями:

Найти сумму положительных компонент файла и дописать её в конец файла
Ввести файл целых чисел найти сумму положительных компонент файла дописать Ее в конец файла . Файл...

Найти произведение компонент файла и сумму квадратов компонент файла
Всем привет, помогите пожалуйста решить задачу: Дан файл, компоненты которого являются...

Найти сумму квадратов компонент файла
Файл f заполнить 300 случайными действительными числами . Найти сумму квадратов компонент файла f .

Найти сумму квадратов компонент файла
Дан файл F, компоненты которого являются действительными числами. Найти сумму квадратов компонент...

9
Фрилансер
3418 / 2815 / 3000
Регистрация: 08.02.2012
Сообщений: 8,603
Записей в блоге: 1
15.12.2012, 10:17 2
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
Var f:file of real;
    i,n,j:byte;
    t,s:real;
    A:array[1..100] of real;
Begin
    Assign(f,'in.dat');Rewrite(f);
    write('Введите размернось файла: ');readln(n);
    writeln('Исходный файл');
    s:=0;
    For i:=1 to n do
    Begin
      t:=random*10-5;
      write(t:0:2,' ');
      write(f,t);
      s:=s+sqr(t);
    End;
    writeln;
    writeln('Сумма квадратов = ',s:0:2);
    write(f,s);
    Reset(f);  
    For i:=1 to FileSize(f) do
    Begin
      read(f,t);
      A[i]:=t;
    End;
    For i:=FileSize(f) downto 2 do
     For j:=2 to i do
      if A[j]<A[j-1] then
      Begin
        t:=A[j];
        A[j]:=A[j-1];
        A[j-1]:=t;
      End;
    writeln('Преобразованный файл');
    Rewrite(f);
    For i:=1 to n+1 do
    Begin
      write(A[i]:0:2,' ');
      write(f,A[i]);
    End;
    readln;
End.
1
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 5
15.12.2012, 15:32  [ТС] 3
почему вывод в текстовый файл идет исковерканный?
0
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
15.12.2012, 15:38 4
kolya_ekb, потому что обрабатывается не текстовый, а типизированный файл - файл вещественных чисел. а где вы упомянули, что необходимо использовать текстовый файл?
0
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 5
15.12.2012, 15:42  [ТС] 5
Я прошу прощения, если не корректо поставил вопрос. Я просто совсем не понимаю эту тему.Мне дали условие задачи которое я писал выше, но препад так же требует чтобы был вывод результата в текстовый файл
0
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
15.12.2012, 15:49 6
kolya_ekb, самым простым способом будет добавить вывод в текстовый файл иди заменить вывод в типизированный выводом в текстовый. (второй вариант - ниже)
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
Var f:file of real;
    r: text;
    i,n,j:byte;
    t,s:real;
    A:array[1..100] of real;
Begin
    Assign(f,'D:\in.dat');Rewrite(f);
    assign(r,'D:\out.txt'); rewrite(r);
    write('Введите размернось файла: ');readln(n);
    writeln('Исходный файл');
    s:=0;
    For i:=1 to n do
    Begin
      t:=random*10-5;
      write(t:0:2,' ');
      write(f,t);
      s:=s+sqr(t);
    End;
    writeln;
    writeln('Сумма квадратов = ',s:0:2);
    write(f,s);
    Reset(f);
    For i:=1 to FileSize(f) do
    Begin
      read(f,t);
      A[i]:=t;
    End;
    For i:=FileSize(f) downto 2 do
     For j:=2 to i do
      if A[j]<A[j-1] then
      Begin
        t:=A[j];
        A[j]:=A[j-1];
        A[j-1]:=t;
      End;
    close(f);
    erase(f);
    writeln('Преобразованный файл');
    For i:=1 to n+1 do
    Begin
      write(A[i]:0:2,' ');
      write(r,a[i]:8:2);
    End;
    readln;
close(r);
End.
1
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 5
15.12.2012, 15:59  [ТС] 7
КонецСвета а сейчас в текстовом файле вообще ничего нет
0
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
15.12.2012, 16:09 8
kolya_ekb, обратите внимание, что в моей программе изменены расположения файлов (на диск D). или посмотрите на диске D, в файле out.txt или переименуйте файлы (точнее, сотрите "D:\"), чтобы они сохранялись в папке с программой
1
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 5
15.12.2012, 16:15  [ТС] 9
КонецСвета, спасибо, все работает.
0
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
15.12.2012, 16:19 10
kolya_ekb, для консольного приложения в дельфи замените 43 строку на writeln(r,a[i]:0:2);
у меня работает.
но в следующий раз вопросы по Дельфи лучше задавать в разделе Дельфи
1
15.12.2012, 16:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.12.2012, 16:19
Помогаю со студенческими работами здесь

Найти сумму квадратов компонент файла
Работа с файлами. Дан файл f, компоненты которого есть действительными числами. Найти сумму...

Найти сумму квадратов компонент файла f
Дан файл f, компоненты которого являются действительными числами. Найти сумму квадратов компонент...

Найти сумму квадратов компонент файла f
Дан файл f, компоненты которого являются действительными числами. Найти сумму квадратов компонент...

Найти сумму квадратов компонент файла
Вот задача: Дан файл, компоненты которого являются действительными числами. Найти произвидение...


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

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