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

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

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

LuLLaby



Новичок

здравствуйте) помогите, пожалуйста.. я тут с файлами бьюсь...
вот написала программу, которая создает список студентов с их баллами и из этого списка смогла выбрать тех, у кого определенная оценка.. а как сделать так, чтобы потом снова можно было выбрать только уже тех, у кого другой балл??? и как удалить студента из списка, у которого балл равен 2?? простите, если как-то криво объясняю...
вот код:
type Abiturient=record
    F:string[30];
    ball:real;
    end;
    var  F:file of Abiturient;
    Abit:array [1..3] of Abiturient;
    i:integer; n: integer;
    begin
    writeln('Vvedite svedeniya ob abiturientah');
    assign(F,'c:\abit.txt');
    rewrite(f);
    for i:=1 to 3 do begin
    write('Familija:');
    readln(Abit.f);
    write('Ball:');
    readln(Abit.ball);
    write(F,abit);
    writeln('----------------');
    end;
    Close(F);
    assign(F,'c:\abit.txt');
    reset(f);
    writeln('');
    write('Vibrat abiturientov poluchivshich^');
    readln(n);
    I:=0;
    while not Eof(F) do begin
    inc(i);
    read(f,abit);
    if abit.ball>=n then
       begin
          writeln(abit.F);
             end;
             end;
             Close(F);
             readln;
             end.
воть... помогите, если нетрудно.. заранее спасибо..)

Всего сообщений: 1 | Присоединился: декабрь 2009 | Отправлено: 20 дек. 2009 14:36 | IP
mrwadewilson



Новичок

Найти среднее арифметическое положительных элементов каждого столбца матрицы Х   при условии, что в каждом столбце есть хотя бы один положительный элемент, N 30. помогите пожалуйста вторую неделю мучаюсь(((


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

Всего сообщений: 8 | Присоединился: декабрь 2009 | Отправлено: 21 дек. 2009 4:34 | IP
Fanat1990



Новичок

Народ помогите пожалйуста срочно надо програмку написать на решение примера y=eps(нижний предел n=1 верхний бесконечность) x в степени 2n-2 / (2n-2) ! . Помогите пожалуйста


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

Всего сообщений: 1 | Присоединился: декабрь 2009 | Отправлено: 21 дек. 2009 13:40 | IP
Pearll


Новичок

Помогите,пожалуйста,решить 2 задачи в pascal на оператор case
Задача 1.
Дано целое число в диапазоне 0 - 100, определяющее возраст (в годах). Вывести строку, которая определяет к какой возрастной группе относится человек(ребенок, подросток, взрослый человек, пенсионер).
Задача 2.
Арифметические действия над числами пронумерованы следующим образом: 1 - сложение, 2 - вычитание, 3 - умножение, 4 - деление. Дан номер действия и два числа A и B (B не равно нулю). Выполнить над числами указанное действие и вывести результат.
ЗАРАНЕЕ СПАСИБО!

Всего сообщений: 1 | Присоединился: декабрь 2009 | Отправлено: 22 дек. 2009 9:26 | IP
Vurdis



Новичок

Привет всем. Помогите сделать проги на паскале. Уже замаялся(((

1) Найти все простые натуральные числа, не превосходящие n, двоичная запись которых представляет собой палиндром, т.е. читается одинаково слева направо и справа налево.
2) Дано натуральное число п > 1. Определить длину периода де¬сятичной записи дроби 1/п.
3) В целочисленной последовательности есть нулевые элементы. Создать массив из номеров этих элементов.

Всего сообщений: 10 | Присоединился: декабрь 2009 | Отправлено: 23 дек. 2009 0:09 | IP
Vurdis



Новичок

Вот что по первой писал, тут че та не то.. Поправте если можете))


program p1;
var z,c,j,n,i,b,x,g:integer;
s,d:string;
function polindrom(a:string):string;
var
h:integer;
begin
for h:=1 to length(a) do
if a[h]=a[length(a)-h+1] then
polindrom:=a else polindrom:='';
end;
begin
writeln('vvedite prostoe chislo');
readln(n);
for i:=1 to n do
begin
c:=0;
for j:=1 to i do
if i mod j=0 then
c:=c+1;
if c=2 then b:=i;
end;
begin
s:='';
while b>0 do
begin
s:=chr(ord('0')+b mod 2)+s;
b:=b div 2;
end;
end;
begin
d:=polindrom(s);
end;
begin
x:=0;
for g:=1 to length(d) do
begin
x:=x+ord(d[g])-ord('0');
if g<length(d) then x:=x*2;
writeln('polindromi=',x);
end;
end;
readln;
end.

Всего сообщений: 10 | Присоединился: декабрь 2009 | Отправлено: 23 дек. 2009 0:17 | IP
KMA



Долгожитель

Идея правильная, но реализация плохая.

Code Sample:
 
program p1;
Var z,c,j,n,i,b,x,g:integer;
      s,d:string;
     IsSimple: boolean;
  function IsPolindrom(a:string): boolean;
  var h:integer;
  begin
   h:=1;
   while ((length(s) div 2) <> (h+1)) and (a[h]=a[length(a)-h+1]) do
     inc(h);
   if (h+1) = (length(s) div 2) then
       polindrom:=true
       else polindrom:=false;
end;

BEGIN
  writeln('vvedite prostoe chislo');
  readln(n);
  for i:=2 to n do
    begin
     IsSimple:=true;
     for j:=2 to trunc(sqrt(n)) do
       if i mod j = 0
          then IsSimple:=false;
     if IsSimple
       then
         begin
           s:='';
           b:=i;
           while b>0 do
             begin
                s:=chr(ord('0')+b mod 2)+s;
                b:=b div 2;
              end;
            if IsPolinom(s)
               then write(i);
         end;  
    end;
   readln;
END.



Что-то вроде этого. На сколько это работает, я не знаю, не проверял, но идею можешь взять отсюда.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 23 дек. 2009 17:10 | IP
Vurdis



Новичок

KMA
Спасибо. Правда там че та с полиндромом ни то.. Некоторое правильно выдает, а некоторое нет. Например число( как и в моей функции) 1011 тоже полиндромом считает)) Да, как бы еще две задачки решить))

Всего сообщений: 10 | Присоединился: декабрь 2009 | Отправлено: 23 дек. 2009 22:21 | IP
Vurdis



Новичок

Третью задачу я сделал. Осталась вторая))) Помогите кто чем может)))

2) Дано натуральное число п > 1. Определить длину периода де¬сятичной записи дроби 1/п.

Всего сообщений: 10 | Присоединился: декабрь 2009 | Отправлено: 23 дек. 2009 23:00 | IP
Korvet



Новичок


Цитата: mrwadewilson написал 21 дек. 2009 4:34
Найти среднее арифметическое положительных элементов каждого столбца матрицы Х   при условии, что в каждом столбце есть хотя бы один положительный элемент, N 30. помогите пожалуйста вторую неделю мучаюсь(((




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

Program Matrix_Avg;

var X:array [0..29,0..29] of Integer;
    i,j,k:byte;
    avg:array [0..29] of Real;
Begin
 Randomize;
 for i:=0 to 29 do
  for j:=0 to 29 do
   x[i,j]:=random(100)-50;

 for j:=0 to 29 do
  begin
   avg[j]:=0;
   k:=0;
   for i:=0 to 29 do
    if x[i,j]>0 then
     begin
      avg[j]:=avg[j]+x[i,j];
      inc(k);
     end;
    if k>0 then
     avg[j]:=avg[j]/k
      else
       begin
        Write('Nekotorye stroki ne sodergat pologitelnyh elementov');
        Break;
       end;
  end;
 if k>0 then
  for i:=0 to 29 do
   writeln('dlj stolbza ',i,#9,Trunc(avg),' ');

 Readln;
End.

Всего сообщений: 40 | Присоединился: ноябрь 2009 | Отправлено: 24 дек. 2009 0:02 | IP

Отправка ответа:
Имя пользователя   Вы зарегистрировались?
Пароль   Забыли пароль?
Сообщение

Использование HTML запрещено

Использование IkonCode разрешено

Смайлики разрешены

Опции отправки

Добавить подпись?
Получать ответы по e-mail?
Разрешить смайлики в этом сообщении?
Просмотреть сообщение перед отправкой? Да   Нет
 

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

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