ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #631  
Старый 12.06.2008, 18:02
Аватар для Mosvit
Mosvit
Познающий
Регистрация: 05.03.2007
Сообщений: 99
Провел на форуме:
744734

Репутация: 44
По умолчанию

Цитата:
Сообщение от Fata1ex  
Берешь символ - если цифра, записываешь в массив, если пробел, идешь дальше. Берешь символ - если цифра, записываешь в массив, если переход на новую строку, инкрементируешь соответствующий аргумент. И так до конца файла.
а как это программно реализовать?

Как-то так?

for i:=1 to n do
If <символ> = <цифра> then <символ>:=a[i,j]
else next <символ>?

А что тогда брать за символ и цифра? Как их обозначть?
 
Ответить с цитированием

  #632  
Старый 12.06.2008, 18:22
Аватар для Fata1ex
Fata1ex
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
Провел на форуме:
4205500

Репутация: 930


По умолчанию

Сорри, я Паскаль совсем не помню ( Алгоритм такой можно использовать, а вот как...
 
Ответить с цитированием

  #633  
Старый 12.06.2008, 19:47
Аватар для Dober'man
Dober'man
Banned
Регистрация: 16.07.2007
Сообщений: 79
Провел на форуме:
801879

Репутация: 337
Отправить сообщение для Dober'man с помощью ICQ
По умолчанию

4_Mosvit
Цитата:
Код:
ft:text;
begin
clrscr;
assign(ft,'123.pas');
Oшибка: переменная ft у тебя типа text => она не откроется на чтение из 123.pas, только 123.txt (т.к. тип text, а не file).

Считываем массив из файла (тут посложней будет) :
Код:
var mas: array of [1..n,1..m] of integer;
      ft: text;

............................

assign(ft,'123.txt');
reset(ft);

......................

i:=1;
while not seekeof(ft) do
  begin
    j:=1;
    while not seekeoln(ft) do
       begin
          read(ft, mas[i,j]);
          j:=j+1;
       end;
     readln(ft);
     i:=i+1;
  end;
Массив считан в переменную mas...
Дальше работаешь как с обычным массивом чисел...
 
Ответить с цитированием

  #634  
Старый 12.06.2008, 22:16
Аватар для hoty
hoty
Познающий
Регистрация: 20.05.2008
Сообщений: 81
Провел на форуме:
224517

Репутация: 32
По умолчанию

На днях спрашивал про PASCAl 7.0:

Цитата:
1. Проверка включения AÌ B (все элементы массива A есть в массиве B).

Вход: Два УПорядоченных множества A и B (массивы).
Выход: да или нет (1 или 0, true или false).

i:=1; j:=1; // указатели на начало множеств
пока i¹ |A|+1 и j¹ |B|+1 цикл
если A[i] < B[j] то вернуть 0 и выход // элемент A отсутствует в B
иначе если A[i] > B[j] то j:=j+1 // переход к след. элементу B
иначе // элементы совпали – перейти к следующим
i:=i+1; j:=j+1;
конец если
конец цикла
если i=|A|+1 то вернуть 1 иначе вернуть 0.<

Вот решение (разобрался :-) :

Цитата:
uses crt;
const n=4, m=4; {n,m - proportion of our mas}
var a[n],b[n];

uses crt;
const n=3; m=7;
var a: array [1..n] of integer;
b: array [1..m] of integer;
i,j: integer;
otvet: boolean;

begin
clrscr;


writeln('a[',n,']');
for i:=1 to n do
begin write('Enter ',i,' Element : '); readln(a[i]); end;

writeln('b[',m,']');
for j:=1 to m do
begin write('Enter ',j,' Element : '); readln(b[j]); end;


i:=1; j:=1;

while ( (i<n+1) and (j<m+1) ) do

if a[i]<b[j] then begin otvet:=false; break; end
else
if a[i]>b[j] then j:=j+1;
else
begin i:=i+1; j:=j+1; end;

if (i=n+1) then otvet:=true else otvet:=false; writeln('otvet : ',otvet);

writeln; writeln('Press to button'); readkey;
end.
Спасибо форумчанам.

Последний раз редактировалось hoty; 12.06.2008 в 22:19..
 
Ответить с цитированием

  #635  
Старый 14.06.2008, 13:16
Аватар для Mosvit
Mosvit
Познающий
Регистрация: 05.03.2007
Сообщений: 99
Провел на форуме:
744734

Репутация: 44
Arrow

Опять возникла проблема,
Задание тоже: Переставить столбцы матрицы в порядке возрастания наибольших элементов столбцов.

Выводить максимальные элементы столбцов не обязательно, я составил из максимальных элементов одномерный массив и в нём хотел всё расствить, но ничего не меняется

Вот как у меня получилось, но почему-то не работает, исправте пожалуйста.


Код:
program lab2;
uses crt;
const n=5; m=5;
var mas: array[1..n,1..m] of integer;
    mne:array[1..99] of integer;
      ft: text;
      i,j:integer;
      x,y:integer;
begin
clrscr;
assign(ft,'123.txt');
reset(ft);
i:=1;
while not seekeof(ft) do
  begin
    j:=1;
    while not seekeoln(ft) do
       begin
          read(ft, mas[i,j]);
          j:=j+1;
       end;
     readln(ft);
     i:=i+1;
  end;
writeln;
writeln('Ishodnaya matrica:');
writeln;
for i:=1 to n do begin
 for j:=1 to m do write(' ',mas[i,j]);
writeln;
end;
writeln;


       writeln (' Massiv iz naibolchih el-ov stolbcov: ');
    for i:=1 to n do
     writeln (' max el-ent ',i,' stolbca ',mne[i]:4);


    for i:=1 to n do
     if mne[i]<x+1 then
      y:=mne[i];




    writeln;
    writeln (' Polucheniy massiv ');
    for i:=1 to n do
     begin
      for j:=1 to m do
       write (mas[i,j]:4);
      writeln;
     end;



readkey;
end.
 
Ответить с цитированием

  #636  
Старый 15.06.2008, 04:59
Аватар для hoty
hoty
Познающий
Регистрация: 20.05.2008
Сообщений: 81
Провел на форуме:
224517

Репутация: 32
По умолчанию

В ПАСКАЛЕ:

Есть задание: отсортировать массив различными способами.

почти сделал)

но ещё нужно: "Правильность сортировки проверить путем подсчета контрольной суммы и числа серий в массиве."
что такое "контрольная сумма" понятно. Это сумма элементов до сортировки и после.

но, что такое "число серий".??.??. ??

Подскажите, плиз.

+ скажите, как сделать подсветку символа
(цифры, хранящейся в integer, допустим a:=7).

Последний раз редактировалось hoty; 15.06.2008 в 06:21..
 
Ответить с цитированием

  #637  
Старый 15.06.2008, 07:42
Аватар для Fata1ex
Fata1ex
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
Провел на форуме:
4205500

Репутация: 930


По умолчанию

http://faqs.org.ru/progr/common/sorting.htm

Посмотри тут, может разберешься
 
Ответить с цитированием

  #638  
Старый 15.06.2008, 10:34
Аватар для Dober'man
Dober'man
Banned
Регистрация: 16.07.2007
Сообщений: 79
Провел на форуме:
801879

Репутация: 337
Отправить сообщение для Dober'man с помощью ICQ
По умолчанию

4_hoty
Опять не туда рыть начал =)
Цитата:
что такое "контрольная сумма" понятно. Это сумма элементов до сортировки и после.
т.е. ты хочешь сказать, что от перестановки слагаемых сумма поменяется?!?!?!
Контрольная сумма - биты - 0 и 1 - XOR'ом считаются...
 
Ответить с цитированием

  #639  
Старый 15.06.2008, 11:13
Аватар для hoty
hoty
Познающий
Регистрация: 20.05.2008
Сообщений: 81
Провел на форуме:
224517

Репутация: 32
По умолчанию

to Fata1ex : thank.

to Dober'man :
Цитата:
Сообщение от Dober'man  
4_hoty
Опять не туда рыть начал =) т.е. ты хочешь сказать, что от перестановки слагаемых сумма поменяется?!?!?!
ужас, я подумал, что сумма не изменится если отсортировать массив ))))
Цитата:
Контрольная сумма - биты - 0 и 1 - XOR'ом считаются...
thank, посмотрю.

To All : кто-нибудь в курсе, что такое число серий в массиве?
 
Ответить с цитированием

  #640  
Старый 15.06.2008, 11:20
Аватар для Dober'man
Dober'man
Banned
Регистрация: 16.07.2007
Сообщений: 79
Провел на форуме:
801879

Репутация: 337
Отправить сообщение для Dober'man с помощью ICQ
По умолчанию

4_Mosvit
Цитата:
Выводить максимальные элементы столбцов не обязательно, я составил из максимальных элементов одномерный массив и в нём хотел всё расствить, но ничего не меняется
Цитата:
Вот как у меня получилось, но почему-то не работает, исправте пожалуйста.
Исправил:
Цитата:
Код:
program lab2;
uses crt;
const n=5; m=5;
var mas: array[1..n,1..m] of integer;
      mne:array[1..n] of integer;
      ft: text;
      i,j:integer;
      x,y:integer;
begin
clrscr;
assign(ft,'123.txt');
reset(ft);
i:=1;
while not seekeof(ft) do
  begin
    j:=1;
    while not seekeoln(ft) do
       begin
          read(ft, mas[i,j]);
          j:=j+1;
       end;
     readln(ft);
     i:=i+1;
  end;
writeln;
writeln('Ishodnaya matrica:');
writeln;
for i:=1 to n do begin
 for j:=1 to m do write(' ',mas[i,j]);
writeln;
end;
writeln;


   writeln (' Massiv iz naibolchih el-ov stolbcov: ');
        for i:=1 to n do
	   begin
  	      for j:=1 to m-1 do
	         begin 	 
   	            if mas[j,i]<mas[j+1,i] then 
		       begin
			 mne[i]:=mas[j+1,i];
		       end;
     	         end;	
                  writeln (' max el-ent ',i,' stolbca ',mne[i]:4);	      
             end; 	  


//    for i:=1 to n do
//     if mne[i]<x+1 then
//      y:=mne[i];




//    writeln;
//    writeln (' Polucheniy massiv ');
//    for i:=1 to n do
//     begin
//      for j:=1 to m do
//      write (mas[i,j]:4);
//      writeln;
//     end;



readkey;
end.
Код:

 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сюда выкладываем все проги для фрикринга мобильников, которых знаем! nigger Сотовый фрикинг 5 11.04.2009 11:15
Американским студентам запретили пользоваться Skype KPOT_f!nd Мировые новости 1 28.09.2006 03:47
Любителям квестов сюда!! FoX's Болталка 10 25.01.2005 20:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ