kastrator Опубликовано 23 Апреля 2007 Жалоба Поделиться Опубликовано 23 Апреля 2007 Народ помогите плиз решить задачку на паскале с ним мало знаком: Дан массив из N целых элементов и два целых числа A и B. Необходимо определить количество элементов, которые одновременно больше A и меньше B. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 23 Апреля 2007 Жалоба Поделиться Опубликовано 23 Апреля 2007 www.sysman.ru Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
vasyast Опубликовано 23 Апреля 2007 Жалоба Поделиться Опубликовано 23 Апреля 2007 (изменено) Примитивная же задача. Массив то одномерный или это матрица? Лови, студент! Код программы:{Vasily @ Ibresource жжот!} Program Elementarshina; uses crt; var na,count,a,b,i : integer; n:array [1..20] of real; begin clrscr; {задаем числа А и В} write('Введите число А: '); readln(a); write('Введите число В: '); readln(b); writeln; {заполняем массивчик} repeat write('Введите количество элементов массива N (не больше 20): '); read(na); until na<=20; count:=1; writeln; while count <= na do begin write('Введите элемент массива N (осталось ',(na-count),'): '); readln(n[count]); count:=count+1; end; {покажем его} writeln; writeln('Исходный массив:'); for i:=1 to na do begin write(n[i]:0:0,' '); end; {поработаем над ним} count:=0; for i:=1 to na do begin if n[i] > a then if n[i]< b then count:=count+1; end; writeln; writeln; writeln('Количество таких чисел в массиве: ',count); writeln; write('Программа завершена, нажмите Enter!'); readln; end. Тестовое задание и работа программы:Введите число А: 1Введите число В: 10 Введите количество элементов массива N (не больше 20): 10 Введите элемент массива N (осталось 9): 1Введите элемент массива N (осталось 8): 2Введите элемент массива N (осталось 7): 3Введите элемент массива N (осталось 6): 4Введите элемент массива N (осталось 5): 5Введите элемент массива N (осталось 4): 6Введите элемент массива N (осталось 3): 7Введите элемент массива N (осталось 2): 8Введите элемент массива N (осталось 1): 9Введите элемент массива N (осталось 0): 10 Исходный массив:1 2 3 4 5 6 7 8 9 10 Количество таких чисел в массиве: 8 Программа завершена, нажмите Enter! Проверь, чтобы правильно работало. Изменено 23 Апреля 2007 пользователем vasyast Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
kastrator Опубликовано 23 Апреля 2007 Автор Жалоба Поделиться Опубликовано 23 Апреля 2007 thkz but: until na<=20; IS ERROR 36kakoi tam pravilniy sintaksis? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
vasyast Опубликовано 23 Апреля 2007 Жалоба Поделиться Опубликовано 23 Апреля 2007 Должно работать. Всё правильно. Попробуй просто na<20. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
kastrator Опубликовано 23 Апреля 2007 Автор Жалоба Поделиться Опубликовано 23 Апреля 2007 Probyval i tak i tak i podrugomuerror 36 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
vasyast Опубликовано 23 Апреля 2007 Жалоба Поделиться Опубликовано 23 Апреля 2007 А среда программирования какая? Я на Turbo Pascal написал... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
kastrator Опубликовано 23 Апреля 2007 Автор Жалоба Поделиться Опубликовано 23 Апреля 2007 Turbo Pascal 7.0 еще тема идиотская:Дана последовательность из 70 целых чисел. Определить сколько отрицательных чисел стоит в начале этой последовательности.please Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
vasyast Опубликовано 24 Апреля 2007 Жалоба Поделиться Опубликовано 24 Апреля 2007 Я на 7.0 и писал. Ты наверно коряво набрал код программы. Вот, погляди:elementarshina.zip Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
kastrator Опубликовано 24 Апреля 2007 Автор Жалоба Поделиться Опубликовано 24 Апреля 2007 Ну с этой я разобрался, а со второй тоже попробывал:Uses Crt; Var Count, I: byte; N:array [1..70] of real; Begin Clrscr; Count:=1; While (Count <= 70) do begin Write('Vvedite element massiva N (ostalos ',(70-Count),'): '); Readln(N[count]); Inc(Count); End; {pokazhem ego} WriteLn; WriteLn('Ishodniy massiv:'); For I:=1 To 70 Do Begin Write(N[I]:0:0,' '); end; {porabotaem nad nim} Count:=0; For I:=1 To 70 Do Begin If N[I] > 0 then break Else Inc(Count); end; WriteLn; WriteLn('Kolichestvo otricatelnyh chisel v nachale massiva: ',Сount); WriteLn; Write('Programma zavershena, zhmem Enter!'); ReadLn; End. Write(N:0:0,' ');end; здесь ошибка синтаксиса но в чем я так и не понял? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
h8)u Опубликовано 24 Апреля 2007 Жалоба Поделиться Опубликовано 24 Апреля 2007 Write(N:0:0,' ');end; здесь ошибка синтаксиса но в чем я так и не понял?Замени просто на write(N[I],' '); end;Или на:write(N[I]:0:0); write(' '); end; Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
-Зверик- Опубликовано 24 Апреля 2007 Жалоба Поделиться Опубликовано 24 Апреля 2007 kastrator, ты бы хоть Василия за потраченное время поблагодарил... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Song Опубликовано 25 Апреля 2007 Жалоба Поделиться Опубликовано 25 Апреля 2007 Раздражают люди за такие реплики:Ну с этой я разобрался, а со второй тоже попробывал: Типа я и сам справился с этой задачей и ТИПА без твоей помощи (пренебрежительно так), но вот с этой пока не получается. Помоги типа. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
-Зверик- Опубликовано 25 Апреля 2007 Жалоба Поделиться Опубликовано 25 Апреля 2007 угу. и не спасибо и ничего, как будто тут все аж должны тебе те минимум по гроб. еще особенно разражает когда чел тратит 20 минут своего времени, а ему за это вообще ничего, ни спасибо ни привета, мол так и должно быть, он тут нанялся те помогать. вообще, поддержка (по собственному опыту в mkportal форуме), вещь очень неблагодарная. юзеры ленятся даже поиском воспользоватся, доки почитать, в гугле попробывать поискать. идут и задают тупейшие вопросы.. главное все проблемы (95-99%) они могут решить сами. но не хотят. попадаются конечно интересные вопросы, но очень редко. и ты тратишь свое время, добрый альтруист.. из доброты сначала пытаешься помочь, разобратся.. а потом те даже спасибо не скажут, гады неблагодарные. потому и плюнул я на это дело. кто не может сам себе помочь - не достоен спасения. ) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 25 Апреля 2007 Жалоба Поделиться Опубликовано 25 Апреля 2007 опять всплывает мега злободневная тема)) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
kastrator Опубликовано 25 Апреля 2007 Автор Жалоба Поделиться Опубликовано 25 Апреля 2007 Ну естественно огромное спасибо! я же написал выше скромновато thkz если кто не видит...кстате менял write(N[I],' '); end;Или на:write(N[I]:0:0); write(' '); end;Не помогло пробывал на разных компиляторах таже ошибка синтаксиса. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
h8)u Опубликовано 25 Апреля 2007 Жалоба Поделиться Опубликовано 25 Апреля 2007 kastrator, ну, значит, синтаксиечская ошибка не в этом месте.Этот кусок написан синтаксически правильно. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
vasyast Опубликовано 25 Апреля 2007 Жалоба Поделиться Опубликовано 25 Апреля 2007 Кривой турбо паскаль у Кастратора (или руки). Собственно ник "говорящий". Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
kastrator Опубликовано 25 Апреля 2007 Автор Жалоба Поделиться Опубликовано 25 Апреля 2007 черт его знает у меня тоже самое подозрение на мой турбо паскаль, вроде кривизной рук не страдаю Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Kvendi Опубликовано 11 Мая 2007 Жалоба Поделиться Опубликовано 11 Мая 2007 Причем здесь Pascal ?Синтаксис языка не меняется.Write+f1. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.