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

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

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

3 страниц V < 1 2 3 >  
 Ответить  Открыть новую тему 
> Задачи на строки и массивы+1 на последовательность
mafia1232
сообщение 2.06.2005 9:48
Сообщение #21


Новичок
*

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

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


в var не надо count прописать? а то у меня ругается
как writeln написать? чтобы кол-во букв "а" выводил ?

Сообщение отредактировано: mafia1232 - 2.06.2005 10:28
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 2.06.2005 10:08
Сообщение #22


Новичок
*

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

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


а код пока такой получился

program p14;
uses crt;
var
s:string;
l,i,count:integer;
begin
clrscr;
writeln('vvedite stroky');
readln(s);
l:=length(s);
{podschet kol-vo bykv a}
count:=0;
for i:=1 to l do
if s[i]='a' then inc(count);
writeln('bykv a=',count);
readln;
end.



Сообщение отредактировано: mafia1232 - 2.06.2005 10:26
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
hiv
сообщение 2.06.2005 10:10
Сообщение #23


Профи
****

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

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


Паскаль это не басик! В нем все переменные должны прописываться и инициализироваться. Это в басике взял переменную и использовал (тип сам подберется и нулем проинициализируется или пустой строкой). Еще раз - УЧИ МАТЧАСТЬ!
ЗЫ: Код правильный - так держать! smile.gif Только в предпредпоследней строке наверно ты хотел выдать значение счетчика - тогда
writeln('Букв А=',count);


Сообщение отредактировано: hiv - 2.06.2005 10:14


--------------------
Никогда не жадничай. Свои проблемы с любовью дари людям!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 2.06.2005 10:25
Сообщение #24


Новичок
*

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

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


а как тогда посчитать самое короткое слово, чего -то искал, но не нашел.
допустим Иванов Алексей Петрович как сделать чтоб именно слово "иванов"
он посчитал самым коротким?

Сообщение отредактировано: mafia1232 - 2.06.2005 10:28
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 2.06.2005 10:51
Сообщение #25


Новичок
*

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

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


Вывести самое короткое слово.
Цитата
Если нет, то выкладывай код - поможем!
ну помогите код выше постом
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
hiv
сообщение 2.06.2005 10:52
Сообщение #26


Профи
****

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

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


берешь снова счетчик и считаешь количество букв (не пробелов) пока не встретишь пробел, т.е. слово закончилось. Потом сравниваешь значение счетчика с переменной min, в которой будет храниться минимальное значение счетчика. А его инициализируешь значением длины всей строки. И если счетчик меньше, то его значение присваиваешь переменной min.
А еще гдянь сюда: FAQ: разбиение строки на слова


--------------------
Никогда не жадничай. Свои проблемы с любовью дари людям!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 2.06.2005 10:59
Сообщение #27


Новичок
*

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

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


а ты просто написать не можешь? щас уезжать надо на зачет и времени думать нету. напиши плиз. :molitva: :molitva:
:molitva: hiv :molitva:
:molitva: :molitva:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
hiv
сообщение 2.06.2005 12:49
Сообщение #28


Профи
****

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

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


Здесь вообще-то помогают тем кто хочет учиться. А ты досиделся пока сдавать пора не пришла. На:
Исходный код
program p14;
uses crt;
var
s,ss,sm:string;
l,i,count,min:integer;
begin
clrscr;
writeln('vvedite stroky');
readln(s);
l:=length(s);
writeln('Dlina stroki=',l);
{podschet kol-vo bykv a}
count:=0;
for i:=1 to l do
if s[i]='a' then inc(count);
writeln('bykv a=',count);

min:=l;
sm:='';
ss:='';
i:=1;
while i<=l do
begin
if s[i]=' ' then
begin
ss:='';
while (i<=l)and(s[i]=' ') do inc(i);
end
else
begin
while (i<=l)and(s[i]<>' ') do
begin
ss:=ss+s[i];
inc(i);
end;
if length(ss)<min then
begin
min:=length(ss);
sm:=ss;
end;
end;
end;
writeln('Korotkoe slovo=',sm);
writeln('Dlina korotkogo slova=',length(sm));

readln;
end.

ЗЫ: Сам разбирайся. No comments!


--------------------
Никогда не жадничай. Свои проблемы с любовью дари людям!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 2.06.2005 19:27
Сообщение #29


Новичок
*

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

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


спасибо огромное, но я до конца не досидел. дали еще 2 недели на все эти задачи и еще 3 прибавили, их я пока сам помучаю.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 23.06.2005 11:09
Сообщение #30


Новичок
*

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

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


исправте(если неправильно) и добавте по условию
создать массив и найти в нем max элемент и поменять у элемента знак на противоположный.
и выводит массив с измененным элементом.
от что получилось, но не работает, хотя списал из справочника (задача была с похожими условиями на поиск максимального значения)
Код
program p3;
uses crt;
type
vector=array [1..100] of integer;
var
A:vector;
i,n,k:integer;
max:real;
begin
clrscr;
writeln('vvedite razmernost');
readln(n);
for i:=1 to n do
begin
write('vvedite [',i,'] elementov massiva');
readln(A[i]);
end;
writeln('massive A');
for i:=1 to n do
write (A[i]:3,'');
writeln;
for i:=1 to n do
read(A[i]);
max:=A[1];
for i:=2 to n do
if A[i]>max then max:=A[i];
writeln('maximalniu element massiva:  ',max:6:2);
end.


Сообщение отредактировано: mafia1232 - 23.06.2005 11:10
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
hiv
сообщение 23.06.2005 11:20
Сообщение #31


Профи
****

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

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


Вот так будет работать, если от куда-то списываешь, то правильно списывай!
program p3;
uses crt;
type
vector=array [1..100] of integer;
var
A:vector;
i,n:integer;
max:integer;
begin
clrscr;
writeln('vvedite razmernost');
readln(n);
for i:=1 to n do
begin
write('vvedite [',i,'] elementov massiva');
readln(A[i]);
end;
writeln('massiv A');
for i:=1 to n do
write(A[i]:3,' ');
writeln;
max:=A[1];
for i:=2 to n do
if A[i]>max then max:=A[i];
writeln('maximalniu element massiva: ',max);
end.


--------------------
Никогда не жадничай. Свои проблемы с любовью дари людям!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 23.06.2005 11:27
Сообщение #32


Новичок
*

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

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


и вот на последовательность
последовательность задается формулой (((-1)^n)*(2^n))/n
вывести сумму членов ряда и первые члены
задача без процедур. лекая, но я забыл как решать sad.gif аж стыдно

насчет массива: все работает после добавления readln ( smile.gif ) , но как помять знак на противополжный (было 10--->-10) и вставить обратно это число в массив и вывести новый массив на экран?

Сообщение отредактировано: mafia1232 - 23.06.2005 11:32
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 23.06.2005 11:29
Сообщение #33


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

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


эээ... ну наверное всетаки надо искать номер максимального элемента , а не его значение smile.gif

nmax:=1;
for i:=2 to n do
if x[i]>x[nmax] then
nmax:=i;
x[nmax]:=-x[nmax];



--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 23.06.2005 11:33
Сообщение #34


Новичок
*

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

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


ну и куда вставить твои строчечки?(объясни) и как сделать то , что я накалякал в Сегодня, 12:27 PM

Сообщение отредактировано: mafia1232 - 23.06.2005 11:34
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 23.06.2005 11:41
Сообщение #35


Гость






mafia1232,
ты думать САМ когда-нибудь начнешь? Смысл какой ЗА ТЕБЯ делать задачи? Потом ты получишь диплом, и что? Так что начинай думать. Уж
Цитата
куда вставить твои строчечки?
можно самому догадаться...
 К началу страницы 
+ Ответить 
klem4
сообщение 23.06.2005 11:47
Сообщение #36


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

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


на, не мучайся уже ...

uses crt;

type

Vector = array[1..100] of integer;

var
a : Vector;

i,n,nmax : integer;

Begin

clrscr;

write('n='); readln(n);

for i:=1 to n do begin
write('a[',i,']=');
readln(a[i]);
end;

nmax:=1;

for i:=2 to n do
if a[i]>a[nmax] then
nmax:=i;

a[nmax]:=-a[nmax];

writeln;

for i:=1 to n do
writeln('a[',i,']=',a[i]);

readln;

end.




Сообщение отредактировано: klem4 - 23.06.2005 11:48


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 23.06.2005 11:55
Сообщение #37


Новичок
*

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

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


какой к черту диплом? у меня специальность не програмист. это так общепознавательный предмет. и в этом году он заканчивается. на 2 курсе его не будет.
спасибо за задачу.

Сообщение отредактировано: mafia1232 - 23.06.2005 11:57
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 23.06.2005 12:11
Сообщение #38


Новичок
*

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

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


последовательность задается формулой (((-1)^n) * (2^n))/n
вывести сумму членов ряда и первые члены

про последовательность. вот мой код
Код

program p2;
uses crt;
var
a,i,n:integer;
s,s1:real;
begin
clrscr;
writeln('vvedite n');
readln(n);
for i:=1 to n do
begin
a:=((exp(i)*ln(-1))*(exp(i)*ln(2))/i)
s:=s+1;
end;
writeln('summa =  ',s:8:3);
readln;
end.

вопросы:
1)как вывести первые члены последовательности
2) про s он пишет, что тип не подходит! на что заменить?
3)как ln(-1) по другому задать, а то чисто математически работать не будет.

Сообщение отредактировано: mafia1232 - 23.06.2005 17:35
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 23.06.2005 12:30
Сообщение #39


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

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


Естественно это не будет работать ... во первых там у тебя полная ерунда написана ... ну например Ln(-1) это чему равно по твоему ?


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mafia1232
сообщение 23.06.2005 12:30
Сообщение #40


Новичок
*

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

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


про ln я знаю и это один из вопросов
ввести переменную d=ln(1), а d потом возвести в степень -1?

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

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

 



- Текстовая версия 18.07.2025 10:12
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"