IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> помогите.[двумерные массивы+записи], помогите решить задачку.пожалуйста.
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


В N городах провели обследование жителей на предмет употребления или не-употребления ими наркотиков (1 - употребляет, 0 - не употребляет). Результаты обсле-дования жителей поступают не упорядоченными по городам. Определить города с мак-симальной тенденцией к употреблению наркотиков.

должна быть запись из 4-ех городов. Напримерм. магнитогорск.саратов.пермь.ульяновск.

исполнителю идет текст.
он отвечает магнитогорск 1.
следующий саратов 0.
магнитогорск 1.
и т.д.
в конце вывести у кого максимум.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 7)
сообщение
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Я вот только не уловил причем здесь двухмерные массивы?У тебя будет одномерный массив из 4 элементов.Считываешь из файла название города магнитогорск.саратов.пермь.ульяновск. если возле города ноль,то ничего не делаешь,идешь дальше,если около города 1,то записываеш в наш массив в ячейку,соотв нашему городу.Возьмем твой пример.
магнитогорск 1. массив выглядит как (1,0,0,0)
саратов 0. массив выглядит как (1,0,0,0)
пермь 1. массив выглядит как (1,0,1,0)
магнитогорск 1. массив выглядит как (2,0,1,0).В конце ищещ максимум из 4 этих чисел.Это будет первое число,что соответствует городу магнитогорску.

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

Сообщение отредактировано: Krjuger -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


Цитата(Krjuger @ 8.02.2012 15:47) *



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


Просто лабораторная называется двумерные массивы. подходила к учителю, сказала что будет record состоять из названия города и 0.1.

я должна буду вводить данные..
"магнитогорск 1"
"Саратов 0"
"магнитогорск 0"
"магнитогорск 1"

так например.

нужно из вводимых данных создать еще record. Но в нем уже не будет повторений("магнитогорск", "магнитогорск").
а будут только по одному имени города. и + уже подсчитаные голоса 1+.

и вывести город с наибольшим надо.
возможно массивы и не нужны будут.
помогите..вообще не знаю уже что делать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Ну record, так record.Вы покажите,как вы пытались решить эту задачу,чтобы было видно,что вы пытались решить ее.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


Цитата(Гость @ 8.02.2012 17:42) *

Ну record, так record.Вы покажите,как вы пытались решить эту задачу,чтобы было видно,что вы пытались решить ее.


Сначала так.
uses crt;
const n=10;
var
a:array [1..n,1..2] of integer;
i,kol,kol1,m: integer;
begin
writeln('введите город');
readln(m);
writeln('введите колличесвто жителей употребляющие наркотики, kol');
readln(kol);
writeln('введите колличесвто жителей НЕ употребляющие наркотики, kol1');
readln(kol1);
a[m,1]:=0;
a[m,2]:=0;

a[m,1]:=a[m,1]+kol;
a[m,2]:=a[m,2]+kol1;

writeln('употребляют ',a[m,1],',а не употребляют ', a[m,2]);
end.
______________________________________________
но потом сказали что нужен record.
и вот только до этого дошла.
и то ошибки(


uses crt;
type town=record;
name:(Magnitogorsk,Saratov,Mockva,Perm);
kol:0,1: byte;
end;

var
a:array [1..n] of integer;
i:integer;
t1,t2: town;

begin


writeln('введите город');
readln(t1.name);
writeln('употребляешь нарктотики');
readln(t1.kol);
end.

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Ничего не понял,то вы вводите количество наркоманов,то вы говорите что вам надо говорить есть ли наркоман или нет,то еще что то.

Как я понимаю, у вас есть 4 города, вы якобы снуете по этим городам и ищите наркоманов,нашли отправили отчет, то есть в базу добавляеться всегда по 1 наркоману,либо сообщаеться,что оный не найден, так?

Эх вы действительно хотите помучаться с перечислимыми типами данных?Для них не работают стандартные функции ввода вывода.....
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


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

uses crt;
const n=4;
type
town=(Magnitogorsk,Saratov,Moscow,Perm);
type city=record
name:town;
nar: byte;
kol: integer;
end;

var
temp:string;
arr :array[1..n] of city;
i:integer;
Ans:char;
Tname:town;
begin
arr[1].name:=Magnitogorsk;
arr[2].name:=Saratov;
arr[3].name:=Moscow;
arr[4].name:=Perm;
arr[1].kol:=0;
arr[2].kol:=0;
arr[3].kol:=0;
arr[4].kol:=0;
repeat
writeln('Vvedite gorod');
readln(temp);
if temp='Magnitogorsk' then
Tname:=Magnitogorsk
else
if temp='Saratov' then
Tname:=Saratov
else
if temp='Moscow' then
Tname:=Moscow
else
if temp='Perm' then
Tname:=Perm
else
writeln('Vi vveli neverniy gorod');

for i:=1 to n do
if Tname=arr[i].name then
begin
writeln('Est8 li narkoman?');
readln(arr[i].nar);
if arr[i].nar=1 then
arr[i].kol:=arr[i].kol+1;
end;
writeln('prodolzit* vvod?(y/n)');
Ans:=readkey;
until ans<>'y';
for i:=1 to n do
writeln(i,' ', arr[i].kol);

readln;
end.


Это,момент когда вводится неверный город в таком виде не работает,я только что заметил,так что надо будет подправить.Сейчас моя программа выводит количество норкаманов во всех городах по списку.

Сообщение отредактировано: Krjuger -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 11
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


Цитата(Krjuger @ 8.02.2012 20:23) *

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

Это,момент когда вводится неверный город в таком виде не работает,я только что заметил,так что надо будет подправить.Сейчас моя программа выводит количество норкаманов во всех городах по списку.


Да я изначально не правильно начала делать...

Мм..ясно. Спасибо большое. Попробую подправить wink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 30.05.2024 6:00
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name