Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2012, 20:55   #1
Praneg
Новичок
Джуниор
 
Регистрация: 16.11.2012
Сообщений: 4
Восклицание Написать программу, заполняющую массив случайными числами в диапазоне 0..1000. Free Pascal

Описать массив, подходящий для представления количества каждой буквы латинского алфавита, встречающейся в некотором тексте (считать все буквы прописными).
  • Написать программу, заполняющую массив случайными числами в диапазоне 0..1000 и распечатывающую таблицу в формате 'буква' - 'число'.
  • Включить в программу функцию, определяющую самую часто встречающуюся букву. Если таких букв несколько, взять первую по алфавиту.
  • Включить в программу процедуру, печатающую все буквы, встречаемость которых находится в диапазоне 750..1000

Последний раз редактировалось Praneg; 16.11.2012 в 21:01.
Praneg вне форума Ответить с цитированием
Старый 16.11.2012, 21:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Как пробовал? )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.11.2012, 21:58   #3
Praneg
Новичок
Джуниор
 
Регистрация: 16.11.2012
Сообщений: 4
По умолчанию

Код:
type
        letter = array [1..26] of real;
var
        a: letter;
        i:integer;
begin
        for i:=1 to 26 do begin
                        readln(a[i]);
        end;
        for i:=1 to 26 do begin
                        writeln(a[i]:0:0);
        end;
        readln;
end.
Таким образом начало, но не уверен, что правильно.
Praneg вне форума Ответить с цитированием
Старый 16.11.2012, 22:04   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,356
По умолчанию

Код:
type
  letters = array ['A'..'Z'] of integer;

var
  a: letters;
  i: char;

begin
  for i := 'A' to 'Z' do
    a[i] := random(1001);//0..1000
  for i := 'A' to 'Z' do 
  begin
    writeln(i, ' - ', a[i]);
  end;
  readln;
end.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 16.11.2012, 22:04   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Абсолютно неправильно.
Цитата:
заполняющую массив случайными числами
Для этого есть функция random()
Цитата:
Описать массив, подходящий для представления количества каждой буквы латинского алфавита
Этот массив может выглядеть так:
Код:
char:array['A'..'z'] of integer;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.11.2012, 22:13   #6
Praneg
Новичок
Джуниор
 
Регистрация: 16.11.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Код:
type
  letters = array ['A'..'Z'] of integer;

var
  a: letters;
  i: char;

begin
  for i := 'A' to 'Z' do
    a[i] := random(1001);//0..1000
  for i := 'A' to 'Z' do 
  begin
    writeln(i, ' - ', a[i]);
  end;
  readln;
end.
Он на char - то вот и ругается!

Самое первое, что от меня требуется?!

Последний раз редактировалось Stilet; 16.11.2012 в 22:39.
Praneg вне форума Ответить с цитированием
Старый 16.11.2012, 23:06   #7
Praneg
Новичок
Джуниор
 
Регистрация: 16.11.2012
Сообщений: 4
По умолчанию

Как тут сделать, чтобы он брал не всё по максу а из 3-10, только первую по алфавиту?
Код:
type
        letters = array ['A'..'Z'] of integer;
var
        a:letters;
        i:char;
        max:real;
begin
        for i:= 'A' to 'Z' do
                a[i]:=random(1001);
        for i:= 'A' to 'Z' do begin
                        writeln(i,'-',a[i]);
        end;
        for i:= 'A' to 'Z' do
                        max:=a[i];
        for i:= 'A' to 'Z' do begin
                        if a[i]>max then max:= a[i];
                        writeln(i,'-',max:0:0);
        end;

        readln;

end.
Praneg вне форума Ответить с цитированием
Старый 16.11.2012, 23:14   #8
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,356
По умолчанию

Код:
type
  letters = array ['A'..'Z'] of integer;

var
  a: letters;
  i, max: char;

begin
  randomize;
  for i := 'A' to 'Z' do
    a[i] := random(1001);//0..1000
  for i := 'A' to 'Z' do 
    writeln(i, ' - ', a[i]);
  max := 'A';
  for i := 'B' to 'Z' do
    if a[i] > a[max] then
      max := i;
  writeln(max, ' - most used letter (', a[max], ')');
  readln;
end.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнить одномерный массив случайными числами. С++ JustKaissy Помощь студентам 7 27.09.2011 11:49
Заполнить массив случайными числами. Fender92 Паскаль, Turbo Pascal, PascalABC.NET 4 19.03.2011 17:05
заполнить массив случайными вещественными числами (C#) _RaWeN_ Общие вопросы C/C++ 2 14.03.2011 19:02
Дана матрица [1..10,1..20] заполненная случайными числами в диапазоне от [-10..19]. Паскаль. Stalker93 Помощь студентам 5 05.12.2010 20:00
Заполнить массив случайными числами forumu Общие вопросы Delphi 13 03.12.2007 22:11