Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
1

Массив.Задача про банки.

17.09.2009, 23:17. Показов 1763. Ответов 15
Метки нет (Все метки)

У вас есть доллары, вы хотите их обменять на рубли. Есть информация купле-продажи в банках города. В городе N банка. Составить программу определяющию какой банк выгодней.

Решал 3 пары, так и не сделалпонял, что задача по типу нахождения максимума в массиве, но как эту задачу воспрлизвести, так и не понял, помогите пожалуйста
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.09.2009, 23:17
Ответы с готовыми решениями:

Задача на перебор вариантов. Задача Л.Эйлера. Про чиновника
Задача Л.Эйлера. Некий чиновник купил лошадей и быков на сумму 1770 талеров. За каждую лошадь он...

Дана 1, 2 , 5 и 10 литровые банки. Для заполнения N литровой банки какими банками нужно пользоваться?
Дана 1, 2 , 5 и 10 литровые банки. Для заполнения N литровой банки какими банками нужно...

Задача про массив
Дано натуральное число N и массив из N целых чисел a1, a2, ..., an. Над элементами массива...

задача про одномерный массив
Формулировка. Определите второй (по значению) наибольший элемент одномерного массива A(M). Формат...

15
Эксперт С++
7175 / 3234 / 79
Регистрация: 17.06.2009
Сообщений: 14,164
17.09.2009, 23:32 2
Выгоден тот банк, где курс покупки у тебя долларов самый максимальный.
0
Модератор
64059 / 47474 / 32728
Регистрация: 18.05.2008
Сообщений: 115,185
17.09.2009, 23:43 3
Pascal
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
uses crt;
const n=10;
var b:array[1..n] of real;
    i,imx:byte;
    mx:real;
begin
clrscr;
randomize;
writeln('Инфомация о стоимости покупки долларов в банках:');
writeln('Номера банков:');
for i:=1 to n do write(i:7);
writeln;
writeln('Курс покупки:');
for i:=1 to n do
 begin
  b[i]:=3*random+30;
  write(b[i]:7:2);
 end;
writeln;
mx:=b[1];imx:=1;
for i:=1 to n do
if b[i]>mx then
 begin
  mx:=b[i];
  imx:=i;
 end;
write('Выгоднее банк № ',imx);
readln
end.
1
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
03.10.2009, 12:08  [ТС] 4
Цитата Сообщение от Puporev Посмотреть сообщение
Pascal
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
uses crt;
const n=10;
var b:array[1..n] of real;
    i,imx:byte;
    mx:real;
begin
clrscr;
randomize;
writeln('Инфомация о стоимости покупки долларов в банках:');
writeln('Номера банков:');
for i:=1 to n do write(i:7);
writeln;
writeln('Курс покупки:');
for i:=1 to n do
 begin
  b[i]:=3*random+30;
  write(b[i]:7:2);
 end;
writeln;
mx:=b[1];imx:=1;
for i:=1 to n do
if b[i]>mx then
 begin
  mx:=b[i];
  imx:=i;
 end;
write('Выгоднее банк № ',imx);
readln
end.
а можешь сделать без автозаполенения, чтобы я сам вводил курс, а то чего не получается, пожалуйста ошибки выходят
0
Тимуровец
444 / 284 / 50
Регистрация: 10.09.2009
Сообщений: 963
03.10.2009, 12:28 5
Замените блок:
Pascal
1
2
3
4
5
for i:=1 to n do
 begin
  b[i]:=3*random+30;
  write(b[i]:7:2);
 end;
на это:
Pascal
1
2
for i:=1 to n 
do Write('Денежка:');  ReadLn(b[i]);
ПС: Я надеюсь автор на меня не обидиться
2
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
04.10.2009, 01:55  [ТС] 6
заменил ) не работает
0
3065 / 725 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
04.10.2009, 02:49 7
ну вообще-то следовало заменить на блок где есть begin и end, т.к. в цикле выполняется более одной строки кода:
Pascal
1
2
3
4
5
for i:=1 to n do
 begin
  Write('Денежка:');
  ReadLn(b[i])
 end;
1
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
04.10.2009, 11:28  [ТС] 8
я думаю, ещё надо убрать randomize или это особого значения не имеет?
0
3065 / 725 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
04.10.2009, 11:33 9
Правильно, если вы не собираетесь использовать random, то следовало бы убрать.
0
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
24.10.2009, 10:41  [ТС] 10
А как всё что получилось, занести в txt файл?
0
Модератор
64059 / 47474 / 32728
Регистрация: 18.05.2008
Сообщений: 115,185
24.10.2009, 10:43 11
Армейский Дьявол, А что получилось и что занести?
0
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
24.10.2009, 10:53  [ТС] 12
У меня в задании написано, рез-ты, а также исходные данные, занести в текстовый файл. Я так понял, сначала получаешь рез-ты из программы с банками, потом создаешь в этой же программе текстовый файл и в него заносятся исходные данные и рез-ты.

Добавлено через 3 минуты
если возможно, то с этой задачей сделать
Pascal
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
var b:array [1..10] of integer;
    i,imx:byte;
    mx:integer;
    begin
writeln ('vvodim kurs ');
for i:= 1 to 10 do
readln (b[i]);
writeln ('kursi bankov');
for i:= 1 to 10 do
write (b[i]:7);
writeln;
begin
writeln ('nomera bankov');
for i:= 1 to 10 do
write (i:7);
writeln;
end;
mx:=b[1];
imx:=1;
for i:= 1 to 10 do
if b[i]>mx then
begin
mx:=b[i];
imx:=i;
end;
write ('vigodnee bank ',imx);
readln;
end.
0
Модератор
64059 / 47474 / 32728
Регистрация: 18.05.2008
Сообщений: 115,185
24.10.2009, 12:23 13
Pascal
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
var b:array [1..10] of integer;
    i,imx:byte;
    mx:integer;
    f:text;
begin
assign(f,'banki.txt');
rewrite(f);
writeln ('vvodim kurs 10 bankov ');
for i:= 1 to 10 do
readln (b[i]);
writeln ('kursi bankov');
writeln (f,'kursi bankov');
for i:= 1 to 10 do
 begin
  write (b[i]:7);
  write (f,b[i]:7);
 end;
writeln;
writeln(f,'');
begin
writeln ('nomera bankov');
writeln (f,'nomera bankov');
for i:= 1 to 10 do
 begin
  write (i:7);
  write (f,i:7);
 end;
writeln;
writeln(f,'');
end;
mx:=b[1];
imx:=1;
for i:= 1 to 10 do
if b[i]>mx then
begin
mx:=b[i];
imx:=i;
end;
write ('vigodnee bank ',imx);
write (f,'vigodnee bank ',imx);
close(f);
readln;
end.
1
0 / 0 / 0
Регистрация: 13.05.2009
Сообщений: 69
25.10.2009, 23:07  [ТС] 14
Почему выводит ток один столбец?
Pascal
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
var
mas:array [1..10,1..10] of integer;
p,k,x,j,i,max,z,n:integer;
f: text;
begin
writeln ('vvdeite x');
readln (x);
assign (f,'kolt010.txt');
rewrite(f);
for i:= 1 to x do
for j:=1 to x do
begin
write ('mas[',i,',',j,']=');
readln (mas[i,j]);
end;
writeln ('nachalni massiv');
writeln(f,'nachalni massiv');
for i:= 1 to x do
begin
for j:= 1 to x do
write (mas[i,j]:3);
write (f,mas[i,j]:3);
writeln;
writeln (f,'');
end;
max:=mas[1,1];
p:=1;
for k:= 1 to x do
if mas[k,k]>max then
begin
max:=mas[k,k];
p:=k;
end;
writeln ('vvedite nomer stroki');
readln (n);
for j:= 1 to x do
begin
z:=mas[n,j];
mas[n,j]:=mas[p,j];
mas[p,j]:=z;
end;
writeln ('konechni massiv:  ');
writeln (f,'konechni massiv');
for i:= 1 to x do
begin
for j:=  1 to x do
write (mas[i,j]:3);
write (f,mas[i,j]:3);
writeln;
writeln (f,'');
end;
if p=n then
begin
 writeln ('mas ne izmenilsya, tk  max diagonali nahoditsya v stroke n');
writeln (f,'massiv ne izmenilsya');
end;
close (f);
readln;
end.
0
1 / 1 / 1
Регистрация: 13.09.2009
Сообщений: 132
25.10.2009, 23:12 15
мне тоже похожую задали, аналогично не выводит весь двумерный массив(
0
Модератор
64059 / 47474 / 32728
Регистрация: 18.05.2008
Сообщений: 115,185
26.10.2009, 07:08 16
Потому что если в цикле обрабатывается более 1 оператора, их нужно брать в скобки begin...end;
Иначе будет выведено только последнее действие цикла, естественно 1 раз.
Pascal
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
uses crt;
const nmax=10;
var mas:array [1..nmax,1..nmax] of integer;
    p,k,x,j,i,max,z,n:integer;
    f: text;
begin
clrscr;
repeat
writeln ('vvdeite x, ne bolee ',nmax);
readln (x);
until x in [1..nmax];
assign (f,'kolt010.txt');
rewrite(f);
for i:= 1 to x do
for j:=1 to x do
  begin
    write ('mas[',i,',',j,']=');
    readln (mas[i,j]);
  end;
writeln ('nachalni massiv');
writeln(f,'nachalni massiv');
for i:= 1 to x do
 begin
  for j:= 1 to x do
   begin
    write (mas[i,j]:3);
    write (f,mas[i,j]:3);
   end;
  writeln;
  writeln (f,'');
 end;
max:=mas[1,1];
p:=1;
for k:= 1 to x do
if mas[k,k]>max then
 begin
  max:=mas[k,k];
  p:=k;
 end;
writeln('max elem na gl. diag=',max,' v stroke ',p);
writeln(f,'max elem na gl. diag=',max,' v stroke ',p);
repeat
writeln ('vvedite nomer stroki ot 1 do ',x);
readln (n);
until n in [1..x];
if p=n then
 begin
  writeln ('mas ne izmenilsya, tk  max diagonali nahoditsya v stroke n');
  writeln (f,'massiv ne izmenilsya');
 end
else
 begin
  for j:= 1 to x do
   begin
    z:=mas[n,j];
    mas[n,j]:=mas[p,j];
    mas[p,j]:=z;
   end;
  writeln ('konechni massiv:  ');
  writeln (f,'konechni massiv');
  for i:= 1 to x do
   begin
    for j:=1 to x do
     begin
      write (mas[i,j]:3);
      write (f,mas[i,j]:3);
     end;
    writeln;
    writeln (f,'');
   end;
 end;
close (f);
readln;
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.10.2009, 07:08

Задача про массив. Нужно закончить
Задали написать такую задачу: Задать массив целых чисел. Вывести исходный массив на экран. Найти...

Задача про массив. Нужно закончить
Добрый день. Помогите пожалуйста доделать программу. Задан массив. Вывести на экран сумму его...

Массив: Последнее дело Оушена. Составьте маршрут, следуя которому, Оушен успеет ограбить все банки.
Оушен отправляется на пенсию! Но для обеспечения безбедной старости он решил напоследок ограбить n...

Задача про взлом кода из книги Эрика Фримена про основы javascript в конце 5 главы.
читаю книгу Эрика Фримена про основы javascript.В конце 5 главы есть задачка про взлом кода.Никак...

Банки
Здравствуйте! Помогите пожалуйста решить такую задачу в Паскале: даны наименования 10 банков и...

Банки видеопамяти
Привет! У меня большие проблемы с пониманием видеопамяти! Я вроде разобрался с режимами, адресами и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.