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

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Решение задач на 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
  

MaJlbBuHa



Новичок

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

вот мое решение:

Program New;
Var f, f1: Text;
s, s1: String; i,j: Integer;
procedure Rd;
begin
readln(f,s);

   i:=i+1;
for j:=1 to Length(s) do
 begin

s[1]:=UpCase(s[1]);
write(i,' ',s[j]);
end;



end;

Begin
assign(f,'input.txt');
reset(f);
assign(f1,'output.txt');
rewrite(f1);
while not (EOF(F)) do begin
Rd;


end;

 readln;
    close(f);
close(f1);

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

Всего сообщений: 48 | Присоединился: январь 2009 | Отправлено: 14 апр. 2010 15:31 | IP
VF



Administrator

MaJlbBuHa
Что-то не увидел где ты номер строки вписываешь... Плюс операция     i:=i+1;  еще до инициализации i.

Всего сообщений: 3109 | Присоединился: май 2002 | Отправлено: 15 апр. 2010 7:21 | IP
Fluff



Новичок

Решите пожалуйста!!!
имя входного файла: team.in
Имя выходного файла: team.out
Ограничение по времени: 2 секунды
Ограничение по памяти: 64 Мб

Андрей решил создать школьную команду, чтобы участвовать в командных олимпиадах по программированию. В команду он пригласил одноклассников: Петю и Диму. В результате распределения ролей в команде, в распоряжении Андрея (капитан) оказалась таблица размером 3 на 3, в которой первая строка соответствует Пете, вторая - Диме, а третья - Андрею. Столбцы же этой таблички соответствуют: первый - роли "программиста", второй - роли "математика", третий - роли "тестера". Таким образом, например, число, стоящее во второй строке третьего столбца показывает, насколько эффективно Дима выполняет роль "тестера".
Эффективность распределения ролей, при котором Андрей назначен на роль, которую он выполняет с эффективностью А. Дима - D, а Петя - P, будем считать равной корню квадратному из суммы квадратов А, D, P.
Помогите мальчикам найти распределение ролей между ними, которое обладает максимально возможной эффективностью.


Входной файл содержит три строки, каждая из которых содержит по три целых числа, - табличку, которую составили Андрей, Петя и Дима. Все числа во входном файле положительны и не превосходят 1000.

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

Всего сообщений: 1 | Присоединился: апрель 2010 | Отправлено: 18 апр. 2010 22:17 | IP
MaJlbBuHa



Новичок


Цитата: VF написал 15 апр. 2010 7:21
MaJlbBuHa
Плюс операция     i:=i+1;  еще до инициализации i.


Это и есть у меня номер строки Я больше не могла никак придумать. Может у Вас есть какие нибудь идеи насчет задачи. Очень буду благодарна Вам

-----
заранее благодарю

Всего сообщений: 48 | Присоединился: январь 2009 | Отправлено: 18 апр. 2010 23:43 | IP
DimoK



Новичок

Добрый вечер! Срочно надо решить пару задачек. Помогите пожалуйста
1)Описать запись с именем AEROFLOT, содержащую следующие поля:
название пункта назначения рейса;
номер рейса;
тип самолета.
Написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; записи должны быть упорядочены по возрастанию номера рейса;
вывод на экран номеров рейсов и типов самолетов, вылетающих в пункт назначения, название кото-рого совпало с названием, введенным с клавиатуры;
если таких рейсов нет, выдать на дисплей соответствующее сообщение.

2)Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке.
Сведения о каждом автобусе включают:
номер автобуса;
фамилию и инициалы водителя;
номер маршрута.
Программа должна обеспечивать:
начальное формирование данных обо всех автобусах в парке в виде списка;
при выезде каждого автобуса из парка вводится номер автобуса, и программа устанавливает значе-ние признака «автобус на маршруте»;
при въезде каждого автобуса в парк вводится номер автобуса и программа устанавливает значение признака «автобус  в парке»;
по запросу выдаются сведения об автобусах, находящихся в парке, или об автобусах, находящихся на маршруте.

Заранее спасибо! Очень буду благодарен.

Всего сообщений: 1 | Присоединился: апрель 2010 | Отправлено: 19 апр. 2010 23:34 | IP
KsyUnya


Новичок

Нужно  разбить данную программу на функции:ввод,обрабодка,вывод
Program lab6_1;
 Var i,N,s:Integer;
     M:Real;
     a:array [1..100] of integer;
     p:array [1..100] of integer;
     f1,f2: Text;
 Begin
   assign(f1, 'in.txt');
   assign(f2, 'out.txt');
   Reset(f1);
   Read(f1,N);
   For i:=1 to N do
   Read(f1,a);
   s:=0;
   for i:=1 to N do
   s:=s+a;
   M:=s/N;
   For i:=1 to N do
   if M>10 then p:=a[n-i+1];
   for i:=1 to N do
    if M<=10 then p:=a;
    Rewrite(f2);
    Writeln (f2,'new array');
    For i:=1 to N do Write(f2,p,' ');
   Writeln (f2);
   Writeln(f2,'Srednee arifmeticheskoye=',M:4:2);
   Close(f2)
End.

у меня получилось так  
Program lab6_1;
 Var i,N,s:Integer;
     M:Real;
     a:array [1..100] of integer;
     p:array [1..100] of integer;
     f1,f2: Text;
 Begin
   assign(f1, 'in.txt');
   assign(f2, 'out.txt');
   Reset(f1);
   Read(f1,N);
   For i:=1 to N do
   Read(f1,a);
   s:=0;
   for i:=1 to N do
   s:=s+a;
   M:=s/N;
   For i:=1 to N do
   if M>10 then p:=a[n-i+1];
   for i:=1 to N do
    if M<=10 then p:=a;
    Rewrite(f2);
    Writeln (f2,'new array');
    For i:=1 to N do Write(f2,p,' ');
   Writeln (f2);
   Writeln(f2,'Srednee arifmeticheskoye=',M:4:2);
   Close(f2)
End.
но препод говорит что это не по технологии программирования,помогите ,срочно

Всего сообщений: 2 | Присоединился: апрель 2010 | Отправлено: 20 апр. 2010 22:15 | IP
KsyUnya


Новичок

стоп,извиняюсь,с ф-цией так получилось

    program lab7_2;
var  i,N,s:Integer;
     M:Real;
     a:array [1..100] of integer;
     p:array [1..100] of integer;
     f1,f2: Text;
procedure Chtenie(var N:integer);
var i:integer;
   M:real;
begin
    assign(f1,'in.txt');
   Reset(f1);
   Read(f1,N);
   For i:=1 to N do
        begin
              Read(f1,a);
              s:=0;
              for i:=1 to N do
              s:=s+a;
        end;
        M:=s/N;
end;
procedure Obrabotka(var M:Real;var N:Integer);
var i:integer;
begin
    assign(f2,'out.txt');
    rewrite(f2);
        for i:=1 to n do
        begin
          if M>10 then p:=a[n-i+1];
        end;
        for i:=1 to n do
        begin
          if M<=10 then p:=a;
        end;
end;
procedure Vivod(var n:integer; M:Real);
var i:integer;
begin
    writeln('');
    writeln('Soderzhanie OUT.txt:');
            for i:=1 to n do
            begin
                   Writeln (f2,'new array');
                   Write(f2,p,' ');
                   Writeln (f2);
                   Writeln(f2,'Srednee arifmeticheskoye=',M:4:2);

            end;
end;
begin
    Chtenie(N);
    Obrabotka(M,N);
    Vivod(N,M);
    close(f1);
    close(f2);
end.

Всего сообщений: 2 | Присоединился: апрель 2010 | Отправлено: 20 апр. 2010 22:18 | IP
misha



Новичок

помогите решить задачу
Составить программу для вычисления суммы бесконечного ряда с погрешностью ε.
а) Процесс суммирования прекращается, как только выполнится неравенство ε, где -текущий член ряда суммирования.
b) Процесс суммирования прекращается, как только выполнится неравенство ε, где -текущий член ряда суммирования, а - предыдущий член ряда. ε=10-3 (минус 3 это степень)
1-x*x/3!+x*x*x*x/5!-x*x*x*x*x*x/7!+…

Всего сообщений: 6 | Присоединился: февраль 2010 | Отправлено: 21 апр. 2010 3:01 | IP
sambuka


Новичок

Korvet, еще один недостаток в решении....если ввести м и к одинаковые, например 3, то программа число под номером 3 ставит в другое место, хотя оно должно остаться на месте....что сделать?

Всего сообщений: 16 | Присоединился: декабрь 2009 | Отправлено: 21 апр. 2010 21:32 | IP
bartmix



Новичок

помогите решить задачи:
______________________________________________________
1) дана действительная квадратная матрица размером nxn Получить x1xn+x2xn-1+...+xnx1, где хк -- найбольшее значение элементов к-го столбца данной матрицы.
2) Пусть дан действительная квадратная матрица, размером nxn. Требуется преобразовать матрицу: поэлементно вычесть последнюю строку из всех строк, кроме последней.
3)Рассмотрим два алгоритма выбора наименьшего из n неравных чисел. Первый алгоритм: найти меньшее, из пнрвых двух чисел и, сравнив его с третьим, опять взять меньшее, сравнить с четвертым и т.д. Второй алгоритм ("кубковая" система): разбить числа на пары, меньшее из каждого пропустить в следующий тур. Если одному из чисел не нашлось парного, то это число тоже проходит в следующий тур. В следующим туре повторить тоже самое и т.д., пока не останется одно числою Какой из этих алгоритмов требует меньше сравнений?


Всего сообщений: 1 | Присоединился: апрель 2010 | Отправлено: 22 апр. 2010 10:22 | 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