Пятница, 29.03.2024, 15:14
Блог учителя информатики и математики
О блогеМой профильРегистрацияВыходВход
Вы вошли как Гость · Группа "Гости" Приветствую Вас, Гость · RSS
Меню блога
Погода в нашем районе.

НАГРАДА

Как Вы считаете, должны ли дети ходить в школу в школьной форме?
Всего ответов: 2806
 
 Блог учителя
Главная » Статьи » Информатика » В помощь ученику

Файлы в Pascal(18 урок, часть 3).

Программный код одного человека,  сильно отличается от кода другого. Это связано не только с тем, что у них разная квалификация, но и из психологических предпосылок, так как порой одну и ту же задачу можно решить разными способами, то всё зависит от предпочтений самого программиста, у каждого есть свои любимые методы, свои подходы. Понятно, почему не принимает учитель задачи решенные одинаково или чуть изменённые.
 И наоборот, вы уже заметили, справившись с задачей, применяешь её основы для решения ряда, казалось бы, совсем не похожих заданий.

Создать файл, содержащий сведения о количестве деталей, изготовленным за неделю. Каждая запись содержит поля – фамилия мастера, количество деталей,  изготовленных им ежедневно в течение 5-дневной недели, т.е. раздельно – в понедельник, вторник и т.д. . Количество записей – произвольное.
Б. Написать программу, выдающую на печать следующую информацию: фамилию мастера и общее количество деталей, собранное им за неделю; фамилию мастера, собравшего наибольшее число изделий, и день, когда он достиг наивысшей производительности труда.

program pr;

uses crt;

type

            sbor=record

            sname:string;

            day:array[1..5] of word;

            all:longint;

    end;

var

    i,j:integer;

    n,max,maxday:word;

    sbord:array[1..1000] of sbor;

    f:text;

Nedelia:array[1..5] of string; // дни недели

 

begin

Nedelia[1]:='Понедельник';

Nedelia[2]:='Вторник';

Nedelia[3]:='Среду';

Nedelia[4]:='Четверг';

Nedelia[5]:='Пятницу';

clrscr;

assign(f,'input.txt');

rewrite(f);

write('Кол-во сборщиков: ');readln(n);

for i:=1 to n do begin

    write('Введите фамилию мастера: ');

    readln(sbord[i].sname);

    sbord[i].all:=0;

    write(f,sbord[i].sname);

    for j:=1 to 5 do begin

        write('Кол-во деталей за ',Nedelia[j],' день: ');

        readln(sbord[i].day[j]);

        sbord[i].all:=sbord[i].all+sbord[i].day[j];

        write(f,sbord[i].day[j]);

    end;

    write(f,sbord[i].all);

    clrscr;

end;

    max:=1;

 writeln('     Ф.И.О итого за неделю ');

    for i:=1 to n do

    begin

    writeln(sbord[i].sname:20,' ',sbord[i].all:15);

    if sbord[i].all>sbord[max].all then max:=i;

    end;

    maxday:=1;

    for i:=1 to 5 do if sbord[max].day[i]>sbord[max].day[maxday]  then maxday:=i;

writeln('Сборщик ',sbord[max].sname,' собрал максимальное кол-во деталей = ',sbord[max].all);

writeln('Собрал максимальное кол-во деталей за ',Nedelia[maxday],'.');

readln;

close(f);

end.

ДЗ. Дан файл вещественных чисел. Поменять в нем местами минимальный и максимальный элементы.

ДЗ.В файле   набрать текст.

1) Вывести на экран сколько раз встречаются в тексте каждая латинская буква и каждый знак арифметической операции.

2) Вывести все символы, встречающиеся в тексте и вывести все символы, встречающиеся в первой и последней строке.
3) Результат занести в другой файл.

Категория: В помощь ученику | Добавил: Harchev (23.12.2013)
Просмотров: 3682 | Комментарии: 5 | Рейтинг: 4.1/47
Всего комментариев: 5
1 Кристина  
№1.Дан файл вещественных чисел. Поменять в нем местами минимальный и максимальный элементы.
uses crt;
var
f:file of real;
x,min,max:real;
n,i,imin,imax:integer;
begin
randomize;
write('Кол-во элементов файла=');
readln(n);
writeln('Исходный файл');
assign(f,'file26.real');
rewrite(f);
for i:=1 to n do
begin
x:=random*10;
write(f,x);
write(x:0:2,' ');
end;
close(f);
reset(f);
read(f,x);
imin:=0;
imax:=0;
max:=x;
min:=x;
for i:=1 to filesize(f)-1 do
begin
read(f,x);
if x>max then
begin
max:=x;
imax:=i;
end
else if x<min then
begin
min:=x;
imin:=i;
end;
end;
writeln;
writeln('Min=',min:0:2,' index=',imin);
writeln('Max=',max:0:2,' index=',imax);
seek(f,imin);
write(f,max);
seek(f,imax);
write(f,min);
close(f);
writeln('Файл после обмена мин и макс');
reset(f);
while not eof(f) do
begin
read(f,x);
write(x:0:2,' ');
end;
close(f);
rea

2 Кристина  
uses crt;
var
f:file of real;
x,min,max:real;
n,i,imin,imax:integer;
begin
randomize;
write('Кол-во элементов файла=');
readln(n);
writeln('Исходный файл');
assign(f,'file.real');
rewrite(f);
for i:=1 to n do
begin
x:=random*10;
write(f,x);
write(x:0:2,' ');
end;
close(f);
reset(f);
read(f,x);
imin:=0;
imax:=0;
max:=x;
min:=x;
for i:=1 to filesize(f)-1 do
begin
read(f,x);
if x>max then
begin
max:=x;
imax:=i;
end
else if x<min then
begin
min:=x;
imin:=i;
end;
end;
writeln;
writeln('Min=',min:0:2,' index=',imin);
writeln('Max=',max:0:2,' index=',imax);
seek(f,imin);
write(f,max);
seek(f,imax);
write(f,min);
close(f);
writeln('Файл после обмена мин и макс');
reset(f);
while not eof(f) do
begin
read(f,x);
write(x:0:2,' ');
end;
close(f);
readln;
end.

3 Анастасия  
Прекрасна школьная пора,
И Нам дано в ней опериться.
Чтоб стать Мудрее, чем вчера,
Нам надо многому учиться.

Мы робко входим в Первый класс,
Неся БУКВАРЬ источник ЗНАНИЙ,
По неизвестным тропкам Нас
Ведёт УЧИТЕЛЬ со стараньем.

Мы постигаем МИР вокруг,
Ответы ищем на вопросы,
Учитель Наш Наш добрый ДРУГ,
Нам с Ним всегда легко и просто.

И пусть пройдёт немало лет,
Как вдруг невидимые НИТИ
Зажгут в Нас тоже добрый СВЕТ,
Что подарил Нам НАШ УЧИТЕЛЬ!

Пришли мы в школу разными путями,
Кто - в двадцать, а кто - после сорока,
Но одинаково опутаны сетями
Щемящей трели школьного звонка.

По пыльным тропам, в бездорожье,
Ведём мы школьный караван,
Порой отчаянно, а где-то осторожно
Бросая вызов вещим небесам.

Привал короткий и опять в дорогу,
Торопимся, боимся не успеть,
Гася в душе извечную тревогу
О том, что песню не успели спеть.

А где-то впереди цветёт оазис,
Там много чистой ледяной воды,
Там воздух, словно сотканный из сказок,
Они житейской мудрости полны.

Наполнив все сосуды влагой чудной
И расплескать боясь заветный дар,
Торопимся опять вернуться к будням,
Опять в дорогу, школьный караван.

Нелёгок путь к седым вершинам знаний,
Здесь каждый метр без боя не пройти,
И наготове ворох испытаний,
И будь готов к случайностям в пути.

Наш спутник верный на дорогах этих,
Ведомый наш на школьных виражах
Тот, для кого храним свои секреты
В пропыленных дорожных багажах.

Он и послушен, и строптив порою,
То радует, то огорчает нас,
Но слёзы всё же он смахнёт рукою,
Когда звучит последний школьный вальс.

Вот в этот миг понять успею,
То, что в дороге не схвачу:
С тобою, школа, молодею,
С тобой состариться хочу.

4 Настя  
uses crt;
var
a: array[1..10] of real;
f:file of real;
b,min,max:real;
i,k,l:integer;
begin
writeln('Ââåäèòå èñõîäíûé ôàéë');
assign(f,'privet');
rewrite(f);
for i:=1 to 10 do
begin
for i := 1 to 10 do begin
readln (a[i]);
write( f, a[i]);
end;
write(f,b);
write(b:0:1,' ');
end;
close(f);
reset(f);
read(f,b);
k:=0;
l:=0;
max:=b;
min:=b;
for i:=1 to filesize(f)-1 do
begin
read(f,b);
if b>max then
begin
max:=b;
l:=i;
end
else if b<min then
begin
min:=b;
k:=i;
end;
end;
seek(f,k);
write(f,max);
seek(f,l);
write(f,min);
close(f);
reset(f);
while not eof(f) do
begin
read(f,b);
write(b:0:1,' ');
end;
close(f);
readln;
end.

5 Даниил  
program dz;
var t:text;
min, max, i, n, i2, i3, c:integer;
f:array [1 .. 100] of integer;
begin
assign(t, 'C:\Users\111\Desktop\Новая папка\input.txt');
rewrite(t);
writeln('Введите кол-во чисел');
readln(n);
for i:=1 to n do
begin
f[i]:=random(50);
write(t, f[i], ' ');
end;
close(t);
reset(t);
writeln('Massiv');
for i:=1 to n do
begin
write(f[i], ' ');
end;
writeln();
min:=f[i];
for i:=1 to n do
begin
if f[i]<min then min:=f[i];
end;
max:=f[i];
for i:=1 to n do
begin

if f[i]>max then max:=f[i];
end;
writeln('Максимальное и минимльное числа: ', min, ' ', max);
for i:=1 to n do
begin
if min=f[i] then i2:=i;
end;
for i:=1 to n do
begin
if max=f[i] then i3:=i;
end;
writeln('Индексы: ', i2, ' ', i3);
c:=f[i2];
f[i2]:=f[i3];
f[i3]:=c;
writeln('New massiv: ');
for i:=1 to n do
begin
write(f[i], ' ');
end;
end.

Имя *:
Email *:
Код *:
Copyright MyCorp © 2024
Блог учителя Учительский портал