Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Решение задач на Pascal. Форум 2
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 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 ]
Модераторы: paradise, KMA
  

MzSpider



Новичок

Почему-то когда я считываю с фаила в массив у мну ошибка
Code Sample:
 
assign(f,'test.txt');
reset(f);
readln(n,m);
for i := 1 to n do
for k := 1 to m do read(f,mas[i,k]);
close(f);




(Сообщение отредактировал MzSpider 3 окт. 2009 20:30)

Всего сообщений: 19 | Присоединился: июль 2009 | Отправлено: 3 окт. 2009 17:25 | IP
Dale



Участник

MzSpider  
Наверное, вы сами уже догадлись
Структура текстового файла такова, что каждая строка заканчивается символами #13 #10. При использовании read стоит учитывать, что она считывает и их.
Без использования elon() будет примерно так:
Code Sample:
 
assign(f , 'test.txt');
reset(f);
{readln(f, n);
readln(f, m); }
readln(n,m);

i:=1;
j:=1;

while i<=n do begin
while j<=m do begin
 read(f,c);
 if (ord(c)<>13) and (ord(c)<>10) then begin
  mas[i,j]:=c;
  j:=j+1;
 end;
end;
i:=i+1;
j:=1;
end;
close(f);



Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 4 окт. 2009 6:25 | IP
Dale



Участник


Цитата: MzSpider написал 3 окт. 2009 17:23
Ой блин , нерпавельно обьяснили))) острова посттрочно
Например
5
5
01010
01100
01110
01111
11000
Итого
1ый остров = площадь 1
2ый остров = площадь 1
3ый остров = площадь 2
4ый остров = площадь 3
5ый остров = площадь 4
1ый остров = площадь 2



Запишите данные файла в массив m2 состоящий из m строк.
Тогда путем работы со строками задача решится очень легко:
Code Sample:
 
for i:=1 to m do m2[ i ]:=m2[ i ]+'0';
ch:=0;
for i:=1 to m do begin
 b:=m2[ i ];
 while pos('1',b)<>0 do begin
    k:=pos('1',b);
    delete(b,1,k-1);
    k:=pos('0',b);
    b1:=copy(b,1,k-1);
    ch:=ch+1;
    writeln(ch,' остров= ',length(b1));
    delete(b,1,length(b1));
 end;
end;



Сначала добавляем нолики в конце для того, чтобы определить конец подстроки из единичек.
Затем ищем подстроки, начинающиеся на '1' и заканчивающиеся '0' и выводим их длину.


(Сообщение отредактировал Dale 4 окт. 2009 7:47)

Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 4 окт. 2009 7:46 | IP
Dale



Участник


Цитата: Kurvochka написал 3 окт. 2009 14:18
Люди привет! если кто-то читает это сообщения то помогите плиз!! Нужно составить анимацию в паскале движение планеты Земля вокруг Солнца. Нужно срочно!!это курсовая работа.



Ну для начала, вот основа:
Code Sample:
 
uses crt,graph;
const r_z=10;{paduyc  3emJIu}
     r_s=100;{paduyc coJIHU,a}
     rasst=200;{paccto9IHue oT 3em do C.}

var driver,mode:integer;
   x_z,y_z:integer;
   yrol:real;
procedure write_zem(x,y:integer);
begin
circle(x,y,r_z);
end;

begin
driver:=detect;
initgraph(driver,mode,'');
x_z:=0;y_z:=0;yrol:=0;
while not keypressed do begin
   cleardevice;
   circle(640 div 2,480 div 2, r_s);

   x_z:=round(cos(yrol)*rasst)+640 div 2;
   y_z:=round(sin(yrol)*rasst)+480 div 2;
   write_zem(x_z,y_z);
   yrol:=yrol+pi/100;
   delay(5000);

end;

end.




Ну а далее, можно подредактировать, злить цветами... Можно подгрузить bmp кртинку, у меня где-то валялся код...
Как вы сами видите свою курсовую?


(Сообщение отредактировал Dale 4 окт. 2009 8:32)

Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 4 окт. 2009 8:27 | IP
MzSpider



Новичок

Dale ,я ее вчера дописал спс за помощь =))

Всего сообщений: 19 | Присоединился: июль 2009 | Отправлено: 4 окт. 2009 12:20 | IP
MzSpider



Новичок

я ненаю почему скачал 3 паскаля а графика не пашет , паскаль безничего вылетает

Всего сообщений: 19 | Присоединился: июль 2009 | Отправлено: 4 окт. 2009 12:28 | IP
Defenishion



Новичок

помогите решить задачку
Дано натуральное число n. Получить f[0]f[1]...f[n], где

f= 1 / ( [ i ]^2+1)+ 1/( [ i ]^2+2)+……+1/( [ i ]^2+[ i ]+1)    







(Сообщение отредактировал Defenishion 4 окт. 2009 13:21)


(Сообщение отредактировал Defenishion 4 окт. 2009 22:41)


(Сообщение отредактировал Defenishion 4 окт. 2009 22:42)

Всего сообщений: 6 | Присоединился: октябрь 2009 | Отправлено: 4 окт. 2009 13:18 | IP
Dale



Участник

Defenishion  

пишите [ i ] в квадратных скобках с пробелами после и перед i, так ничего не понятно

Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 4 окт. 2009 19:44 | IP
Dale



Участник

MzSpider  
а как ты делаешь initgraph? попробуй c:\tp\bgi и т.п.

Всего сообщений: 139 | Присоединился: май 2009 | Отправлено: 4 окт. 2009 19:48 | IP
Kurvochka



Новичок


Цитата: Dale написал 4 окт. 2009 8:27

Цитата: Kurvochka написал 3 окт. 2009 14:18
Люди привет! если кто-то читает это сообщения то помогите плиз!! Нужно составить анимацию в паскале движение планеты Земля вокруг Солнца. Нужно срочно!!это курсовая работа.



Ну для начала, вот основа:
Code Sample:
 
uses crt,graph;
const r_z=10;{paduyc  3emJIu}
     r_s=100;{paduyc coJIHU,a}
     rasst=200;{paccto9IHue oT 3em do C.}

var driver,mode:integer;
   x_z,y_z:integer;
   yrol:real;
procedure write_zem(x,y:integer);
begin
circle(x,y,r_z);
end;

begin
driver:=detect;
initgraph(driver,mode,'');
x_z:=0;y_z:=0;yrol:=0;
while not keypressed do begin
   cleardevice;
   circle(640 div 2,480 div 2, r_s);

   x_z:=round(cos(yrol)*rasst)+640 div 2;
   y_z:=round(sin(yrol)*rasst)+480 div 2;
   write_zem(x_z,y_z);
   yrol:=yrol+pi/100;
   delay(5000);

end;

end.




Ну а далее, можно подредактировать, злить цветами... Можно подгрузить bmp кртинку, у меня где-то валялся код...
Как вы сами видите свою курсовую?


Ну можно конечно сделать по красочнее как-то. а как это подгрузить картинку можно7 и что это даст?подскажите пожалуйста и это. я уже Вам очень благодарна!  

Всего сообщений: 7 | Присоединился: октябрь 2009 | Отправлено: 5 окт. 2009 12:01 | IP

Эта тема закрыта, новые ответы не принимаются

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 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 ]

Форум работает на скрипте © Ikonboard.com