Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Delphi чтиение из фала. [D6, D7]


Dezigo ©   (2008-04-16 19:54:00) 

Привет! Помогите! Проблема у меня.
Я пишу на Delphi элементарное задание и не как не могу понять в чём ошибка.
Задание:
Мне надо ввести в поле Edit1, любые цифры. Например - 452
Я записываю их в фаил. Потом я должен прочитать с файла это, каждое число возвести в квадрат и сложить их вместе.(4^2+5^2+2^2) Фаил типизированый. Вот что я на писал..
procedure TForm1.Button1Click(Sender: TObject);
var F:file of integer;
   i:integer;
begin

Edit1.text:='567';
  AssignFile(F,'abc.dat');
  reset(F);
  write(F,i);

 // if (Length(edit1.text)=0))
   //   then ShowMessage('Pusto');

end;

procedure TForm1.Button2Click(Sender: TObject);
var F:file of integer;
   i,c,v,b,summa:integer;
begin
for i:=1 to length(Edit1.text) do begin
 b:=StrToint(Edit1.text[c]);
 summa:=summa+sqr(b);
ShowMessage(IntTostr(summa));

end;


Ega23   (2008-04-17 12:59:00) [1]

Вот из принципа сейчас напишу правильный код, но сделаю его так, что ты никогда преподавателю не докажешь, что это ты сам написал.


Задачка ясна, да ведь знаний-то нет,
В глазах у него помутилось,
Увидел стипендии меркнущий свет,
Упал. Сердце больше не билось...


из народной студенческой песни.


oldman   (2008-04-17 12:49:00) [2]


> Palladin ©   (17.04.08 12:44) [17]
> али ты автор?


Упаси господь!!!


Palladin   (2008-04-17 12:44:00) [3]


> oldman ©   (17.04.08 10:38) [14]

кому помог? я тебя просил чтоли? я автора просил. вот когда автор начал бы шаг за шагом просматривать свой код, он бы увидел что цикл у него для переменной i, а обращается он к символу по индексу c.

али ты автор?


Anatoly Podgoretsky   (2008-04-17 11:17:00) [4]

> oldman  (17.04.2008 10:38:14)  [14]

> end;    // без этого никак?   :)))

Без этого никак.


oldman   (2008-04-17 10:45:00) [5]

Автору поста на заметку:

Вы с такими вопросами хоть анкету свою поправьте.
Не позорьтесь.
И не смешите.


oldman   (2008-04-17 10:38:00) [6]


> Palladin ©   (16.04.08 20:33) [11]
> объясни шаг за шагом, как я в комментариях, каждую строчку
> в событии Button2.OnClick


procedure TForm1.Button2Click(Sender: TObject); // сойдет и так
var F:file of integer;     // на фига тут F?
 i,c,v,b,summa:integer;  // на фига тут c и v?
begin                // понятно

// Если задание дали в школе, я бы вставил сюда summa:=0;

for i:=1 to length(Edit1.text) do begin    // тоже понятно
b:=StrToint(Edit1.text[c]);         // смотри выше
summa:=summa+sqr(b);        // сойдет

// а почему сразу не написать summa:=summa+sqr(strtoint(edit1.text[i]));?

ShowMessage(IntTostr(summa));    // сойдет

end;    // без этого никак?   :)))

Сильно помог???


oldman   (2008-04-17 10:28:00) [7]


> for i:=1 to length(Edit1.text) do begin
> b:=StrToint(Edit1.text[c]);


Может таки
b:=StrToint(Edit1.text[ i]);


oxffff   (2008-04-16 20:35:00) [8]


> Dezigo ©   (16.04.08 19:54)  


Мне такое же задание дали. Когда сделаешь кинь мне на почту.
Заранее благодарен


Palladin   (2008-04-16 20:33:00) [9]

объясни шаг за шагом, как я в комментариях, каждую строчку в событии Button2.OnClick


Johnmen   (2008-04-16 20:30:00) [10]


> надеюсь другие люди помогут. (

Даже и не думай (с)


dezigooo   (2008-04-16 20:17:00) [11]

надеюсь другие люди помогут. (


dezigoo   (2008-04-16 20:12:00) [12]

(
> > Palladin ©   (16.04.08 20:01) [4]А..Ну да, попарься)

Спасибо. так помооог


Palladin   (2008-04-16 20:11:00) [13]

уже не буду, меня зазвали до дому )


Сергей М,   (2008-04-16 20:08:00) [14]


> Palladin ©   (16.04.08 20:01) [4]


А..

Ну да, попарься)


Dezigo   (2008-04-16 20:04:00) [15]

// if (Length(edit1.text)=0))
 //   then ShowMessage('Pusto');  -- это я закоментировал. ((

Фаил существует,мне надо чтобы работало.или исползовать..Rewrite()
а что ты скажешь на счёт возведение чисел в квадрат.. и их   сложитьвместе. , ? ;(


Palladin   (2008-04-16 20:01:00) [16]

ему, рОдному... :)


Сергей М,   (2008-04-16 20:00:00) [17]


> Palladin ©   (16.04.08 19:58) [1]


Ты это комусечас ?)


Сергей М,   (2008-04-16 19:59:00) [18]


> Вот что я на писал


Не надо, на, "пИсать", нужно просто учитьсяв течение семестра, а не дурака валять.
Тогда и вопросов не будет. Идиотских.


Palladin   (2008-04-16 19:58:00) [19]

var F:file of integer;
  i:integer;
begin

Edit1.text:='567';
 AssignFile(F,'abc.dat');
 reset(F); // если файл не существует, тебя отправят куда подальше
 write(F,i); // где у тебя i назначается? ИИ к компиляторам еще не прикрутили

// if (Length(edit1.text)=0))
  //   then ShowMessage('Pusto'); так может проверить то надо ДО записи в файл?
// а кто будет закрывать файл? Пушкин А.С. ?
end;

procedure TForm1.Button2Click(Sender: TObject);
var F:file of integer;
  i,c,v,b,summa:integer;
begin
for i:=1 to length(Edit1.text) do begin
b:=StrToint(Edit1.text[c]);
summa:=summa+sqr(b);
ShowMessage(IntTostr(summa));

end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо