Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2014, 14:25   #11
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var F: File of real;
    V: String;
begin
with OpenDialog1 do
  if Execute then
   begin
   AssignFile(f,FileName);
    reset(f);
while (not EOF(F)) do
        begin
          Readln(F, V);
          Memo1.Lines.Add(V);
        end;
end;
end;end.
Readln(F, V);
[Error] Unit1.pas(39): Incompatible types: 'Real' and 'String'

Что нужно исправить?
nadyaH вне форума Ответить с цитированием
Старый 31.03.2014, 14:51   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Что нужно исправить?
F: File of real; на F: Text;
Это для начала.
А вообще если нужен именно файл типизированный то соответственно его создавать не в блокноте а программой.

Если же у тебя файл действительно типизированный то:
Код:
var F: File of real;
    V: Real;
begin
with OpenDialog1 do
  if Execute then
   begin
   AssignFile(f,FileName);
    reset(f);
while (not EOF(F)) do
        begin
          Readln(F, V);
          Memo1.Lines.Add(format('%5.2f',[V]);
        end;
end;
end;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.03.2014, 15:15   #13
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

Код:
Readln(F, V)
Unit1.pas(39): Incompatible types
ошибку выдаёт , но другую.
nadyaH вне форума Ответить с цитированием
Старый 31.03.2014, 15:30   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Внимательно смотри: У тебя V и file of должны быть одного и того же типа!
Код:
var F: File of real;
    V: Real;
или
Код:
var F: Text;
    V: String;
соответственно. В зависимости от файла естественно. Т.е. в каком виде там данные.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.03.2014, 15:58   #15
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

Код:
var
   F: File of real;
    V: Real;
в строке
Код:
Readln(F, V);
ошибка [Error] Unit1.pas(40): Incompatible types
nadyaH вне форума Ответить с цитированием
Старый 31.03.2014, 16:08   #16
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Потому что файл текстовый: Читай же внимательно что тебе пишут.
Еще раз повторю:тебе нужен либо типизированный файл либо используй Text в качестве переменной для файла и string для V
Или проще:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
with OpenDialog1 do
  if Execute then
          Memo1.Lines.LoadFromFile(FileName);
end;
Если нужно только загрузку сделать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 31.03.2014, 18:04   #17
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

Код:
n:=FileSize(F); 
for i:=0 to Memo1.Lines.Count do
 if Seek (F,i-1)>(Seek (F,i+1)< Seek (F,i+2) then  здесь выдаёт ошибку?!
 edit1.text:=Seek (F,i+1);
end;
CloseFile(F)
end.
нужно найти локальный минимум. Если не правильно, то что нужно исправить?!
nadyaH вне форума Ответить с цитированием
Старый 31.03.2014, 18:41   #18
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А что Seek делает?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 31.03.2014, 18:53   #19
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

Seek(var F; NumRec: Longint) — устанавливает позицию чтения-записи на элемент с номером
nadyaH вне форума Ответить с цитированием
Старый 31.03.2014, 18:58   #20
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Ну и добавьте - процедура, которые как известно ничего не возвращают. И чего вы там сравнить пытаетесь?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан файл вещественных чисел bbs-serega Фриланс 12 06.07.2011 14:48
Дан файл вещественных чисел. Создать файл целых чисел, содержащий номера всех локальных максимумов в порядке возрастания zzz6 Помощь студентам 1 04.07.2011 12:59
Дан файл вещественных чисел. dexter2145 Помощь студентам 7 08.06.2010 22:50
Дан файл вещественных чисел. xilnurx Помощь студентам 0 13.03.2010 12:43