Камрады,выручайте.Как то обращался уже,помогли,ещё раз помощи прошу.Задачу нужно ребёнку завтра сдать по информатике этой.Суть такова: Дано четырёхзначное целое число.Посчитать,сколько раз в этом числе повторяется первая цифра, и проверить кратно ли 5 произведение крайних цифр этого числа.Стройные функции Turbo Pascal использовать inc(x). Вот такая загогулина.Камрад,кто помог в прошлый раз,отзовись пожалуйста!
Вот это пока посмотрите. Хоть что-то, чем совсем ничего ))
http://forum.sources.ru/index.php?s=45e4f2b014d270e157f6e4f26a40f1f6&showtopic=141212
Вот это пока посмотритеСпасибо.Но я ни в зуб ногой,ребёнок тоже.Может ещё варианты есть?
Ребят, качаем Фаронова 1-й учебник и вперёд! Осваиваем великий и могучий Паскаль))
ПаскальДа я от этих слов,как бес от ладана.Не осилю.))))
Чего ж дитё учится так плохо? Чё за число хоть дано? или его найти надо?
be_happy
Чего ж дитё учится так плохо? Чё за число хоть дано? или его найти надо?
Я так понял, что прога должна проделывать операции с любым 4-х значным числом.
ладно, ща сделаем - с вас пиво))))))))
ладно, ща сделаем - с вас пивоБез вопросов!
Чего ж дитё учится так плохоДитё учится отлично,но не её профиль информатика,забивает на неё,другие науки осваивает.
Чё за число хоть дано? или его найти надоНе дано ничего вроде про число.Всё,как в начальном посте,дословно.
program test;
uses crt;
var w, tw, ans1: word;
strw: string;
ans2: boolean;
fv: char;
p1,p2,pp: integer;
tr: real;
begin
clrscr;
write('Vvedite chislo:'); read(w); readln;
str(w,strw);
fv:=strw[1];
ans1:=0;
for tw:=2 to 4 do
if fv=strw[tw] then inc(ans1,1);
val(fv,p1,pp);
val(strw[4],p2,pp);
tr:=p1*p2/5;
if frac(tr)>0 then ans2:=false else ans2:=true;
writeln('pervaia cifra povtoriaetsia:',ans1);
if ans2 then
writeln('kraynie chisla kratny 5')
else
writeln('kraynie chisla ne kratny 5');
writeln;
write('Press ENTER to exit... ');
readln;
end.
З.Ы. написал так как понял условие
написал так как понял условиеСпасибо.Как с пивом быть?)))
Да лан, шутка - накладно будет в волгоград слать)))
написал так как понял условие
Игорь, я, все-таки, каждый раз восхищаюсь навыками программистов в принципе, и твоими в частности!
Господи, бедные дети...
Офигеть)
Не, ну я догадывался, что программеры - инопланетяне, но когда так наглядно... Тут даже и пивом не отделаешься. 😀
Кто-то видит просто буквы и цифры, а кто-то блондинку, брюнетку...
Кто-то видит просто буквы и цифры, а кто-то блондинку, брюнеткуКто на что учился,как говорится,или каждому своё.)))))
Господи, бедные детиВот и я о том.
Дитё учится отлично,но не её профиль информатика,забивает на неё,другие науки осваивает.Ну успехов ей тогда в других науках)
Ну успехов ей тогда в других наукахСпасибо большое.Будете в Москве пишите,или я Доктора Влада попрошу,как в Волгоград поедет,пиво передам с ним.))))
семен
Кто на что учился,как говорится,или каждому своё.)))))
Меня и поражает, способность людей в этом разбираться.
Просто, я знаком IRL с Игорем, он, полностью писал мне ПО для магазина, и это я ему да ссылку на эту тему, надеюсь ТС не против, но я не понимаю, как можно в этом разбираться?!!
Мой предел, это "Hello world", и то, в Бейсики 😊
надеюсь ТС не против,Я только За.)))
Семен, это в школе такие задания дают?
У меня это было на первом курсе универа. А в школе мы на Бейсике квадратики рисовали.
, это в школе такие задания даютДа,предмет информатика.
семен
Да,предмет информатика.
Мда, бедные дети......
Сергей, а у нее дома на компе есть где проверить работу программы? Компилятор Pascal стоит?
Мда, бедные детиПричём каждый препод считает свой предмет основным и грузит по полной.Я вот никак не пойму зачем нужно так сильно углубляться,ну сделали бы в форме семинаров,кому надо посещают.
Сейчас приедет из школы,узнаю,как прошло с задачей.
Сергей, а у нее дома на компе есть где проверить работу программы? Компилятор Pascal стоит?Блин,даже не знаю,компов у неё аж три штуки вместе с ноутом и нетбуком,а что там стоит,я даже туда и не лезу,со своими двумя классами церковно-приходской.))))Поинтересуюсь,когда увижу.
Ты спроси. Ей может самой будет интересно. А главное наглядно. Да и освоить в объеме школьной программы может каждый. Ей же по жизни все равно придется пользоваться техникой. Так хоть бояться не будет на кнопки нажимать.
Как всё прошло-то?
Причём каждый препод считает свой предмет основным и грузит по полной.Я вот никак не пойму зачем нужно так сильно углубляться,ну сделали бы в форме семинаров,кому надо посещают.Я не так давно закончил школу, но еще успел сдавать экзамены по старому и старую школу образования в какой-то мере застал... И я сейчас радуюсь что нас грузили и гоняли... Гляжу темы про реформу образования и выть хочется...
Сейчас приедет из школы,узнаю,как прошло с задачей.
А информатика... Она творческая) Один раз понять и разобраться. а дальше понравится! Я учился, помню на листочке программы писал, а потом в школе проверял...
------------------
Снимаю. Порчу.
Я б ребёнку готовую прогу не подсунул, не педагогично - привыкнет к халяве.
Объяснить ребёнку по человечески, что надо делать, чтоб задачу решить, а там пусть сам кумекает.
Если коротко, то вводимое число (например 1234) в программе представляется как набор символов 1-2-3-4.
Для решения первого вопроса введём переменную-счетчик и установим её в ноль. Затем запомним первый символ и будем последовательно (в цикле) сравнивать с ним все остальные. Как только появится совпадение увеличим счетчик на 1. После сравнения всех цифр значение счётчика равно количеству совпадений.
Для второго задания запомним первую и последние цифры (символы). Перемножим их и поделим на 5. В приведённой проге отбрасывается целая часть и если дробная часть больше нуля, то произведение крайних цифр не кратно 5, иначе кратно. В некоторых языках есть специальные операторы проверки кратности.
Тут главное не программирование, а математика.
growantrНе. Так не пойдет. Нужно было последовательно в тему входить. С середины сложно для восприятия будет.
вводимое число (например 1234) в программе представляется как набор символов 1-2-3-4.
Я ж коротко. К тому же, если "такое" задают, то надоб понимать.
Как всё прошло-тоПрошло нормально.Но снова вот задали,опять за хелпом .Понимаю,что надоел,но больше не к кому.)))Такая задача: Дано четырёхзначное целое число.
а) посчитать произведение цифр этого числа,принадлежащих промежутку от 2 до 6
б)заменить на НОЛЬ первые две цифры этого числа,если они чётные
И вторая задача:
Даны пять трёхзначных чисел.Посчитать кол-во тех чисел,у которых сумма цифр равна А(число А вводится с клавиатуры)
Задачи нужно опять на языке Турбо-Паскаль.Выручайте,камрады!
Они массивы уже изучали?
Они массивы уже изучали?Да нет.Информатика это не профильный предмет для школы,там на языки упор.Знаний по информатике не требуют,но задачи решать обязывают,такой подход.С физруком я то договорился)))),а вот с информатикой никак.)))))
Сергей, по второй задаче без массивов неудобно решать. Или списки использовать, что еще сложнее.
С физруком, IMHO, зря договаривался. Хоть какая-то подвижность. Или она ходит куда-то отдельно от школы?
Мужики , как у Вас здесь интересно ! Только ни черта не понимаю . Другой профиль .
Хорошо что Ганза есть , и товарисчей не счесть - помогают !
Sorry , что не в тему , просто приятно видеть понимание . Слегка пьян .
Или она ходит куда-то отдельно от школыТеннис с персональным тренером,раз в неделю плавание,горные лыжи в сезон с инструкторами,сейчас уже без.
по второй задаче без массивов неудобно решать. Или списки использовать, что еще сложнееЧего делать то???
Щас тряхну стариной. Коньяк вот допью.
Тогда порядок. А то думал ты с физруком договорился как с тем почтальоном из "Славных парней", которому голову в духовку засовывали. 😊
Ждем помощников по информатике. Сам когда-то учил лет 20 назад. Сейчас тяжко вспоминать, но как "оружие последнего шанса" буду тут неподалеку. 😊
по второй задаче без массивов неудобно решать. Или списки использовать, что еще сложнееможно переменные обозвать
a1
a2
a3
a4
...
aN
😊
и развернуть цикл в "китайский код".
которому голову в духовку засовывали.Я проще сделал,ему человек,уважаемый в спортивных кругах позвонил и сувенир передал,а так бы да,собрался уже его на лобное место вывозить.)))))))))
семен
уважаемый в спортивных кругах позвонил и сувенир передал,
отрезанную конскую голову?))
и развернуть цикл в "китайский код".Эээ,даже не знаю,как это?А поподробнее можно,пожалуйста.
отрезанную конскую головуФотографию со своим автографом,подкинулся физрук,как от конской головы.))))
семенконечно. вот инфа с лурка:
Эээ,даже не знаю,как это?А поподробнее можно,пожалуйста.
Kитайский код - стиль написания программ, нарушающий принцип НПС («Не повторяй себя» ). Китайский подход к программированию требует эксплицитного отказа от циклов, локальных переменных, любых процедур и условных выражений, а также использования технологии copy-and-paste чуть менее, чем везде. Такой подход точно увеличивает объём исходников и может увеличить производительность (ведь пропускаются такты на джамповые команды).
Возьмём, к примеру, такой кусочек программы на C:
Который, кстати, вполне мог бы выглядеть и так:
int arr[10];
int i;
for (i = 0; i « 10; i++)
{
arr[i] = 0;
}
Типичный программист в китайском стиле напишет это так:
int arr[10] = {0};
и в дальнейшем будет использовать a0, a1, a2, a3, a4 и т.д.
int a0 = 0;
int a1 = 0;
int a2 = 0;
int a3 = 0;
int a4 = 0;
int a5 = 0;
int a6 = 0;
int a7 = 0;
int a8 = 0;
int a9 = 0;
конечно. вот инфаБлин,точно не осилит,мне бы вариант решения готовый,чтобы в тетрадь переписать и сдать.
Блин,точно не осилит,мне бы вариант решения готовый,чтобы в тетрадь переписать и сдать.тут - сорри, я турбо паскаль с первого курса не видел, а вникать заново - нет времени 😞
решение в псевдокоде могу дать, а готовый к сдаче код на паскале - нет.
решение в псевдокоде могу датьДайте пожалуйста,если не затруднит.Может ещё кто на помощь придёт.))
Щас тряхну стариной. Коньяк вот допью.Ну как коньяк?Хорошо идёт?Жду.))))))
в меру сил пытаюсь вспомнить паскалевский синтаксис.
меня аццки глючит, решения явно не оптимальное, но получается примерно так:
1. Дано четырёхзначное целое число.
а) посчитать произведение цифр этого числа,принадлежащих промежутку от 2 до 6
б)заменить на НОЛЬ первые две цифры этого числа,если они чётные
{определяем функцию, которая будет проверять наше условие}
function test(a:integer)
begin
if a »= 2 AND a «= 6 then
test := a;
else
test := 1;
end;
var
{определяем нужные переменные, a1..a4 и result. массив не использую.}
a1, a2, a3, a4, result:integer
begin
{читаем четыре разряда числа. как это правильно делается, я не помню, может быть ошибка}
read(a1,a2,a3,a4);
{умножаем}
result := test(a1);
result := result * test(a2);
result := result * test(a3);
result := result * test(a4);
if result = 1 then
result := 0;
{выводим результат умножения}
writeln(result);
if (a1 [b]mod 2 == 0) AND (a2 mod 2 == 0) then
begin
a1 = 0;
a2 = 0;
end;
{выводим новое (или старое, если условие не выполнено) число, по разрядам}
writeln(a1,a2,a3,a4);
end;
задача 1 вопрос 1:
введём 2 массива,
в первый запишем поэлементно(поциферно) рассматриваемое число;
в другой будем записывать числа большие 2, меньшие 6;
в цикле по элементам 1-го массива, если элемент от 2 до 6 пишем его во 2-й массив, иначе следующая итерация цикла
перемножаем все элементы 2-го массива между собой (скорее всего в цикле);
выводим результат перемножения.
задача 1 вопрос 2:
используем первый массив,
в цикле по первым двум элементам 1-го массива, элемент делим на 2, отбрасываем целую часть;
смотрим на остаток: если остаток больше ноля элемент не кратен 2-м, иначе пристваеваем элементу значение ноль.
вывод массива в качестве числа.
задача 2:
введём переменную-счётчик количества чисел, у которых сумма цифр равна А;
ввведём массив в который будем записывать поочереди каждое 3-х значное число;
в цикле от 1 до 5 (по количеству чисел)
запишем в массив поэлементно число;
считаем сумму элементов массива;
сравниваем сумму и А;
если равны увеличиваем счётчик на 1, иначе нет;
обнулим массив;
следующая итерация цикла.
после перебора всех чисел смотрим на счётчик.
Я в синтаксисе Паскалей ноль, поэтому только теория. Эдак всё вспомниш, даже чего незнал=)
Спасибо камрады!!!)))) Ещё есть варианты,на Паскале этом?
Ну вы жжоте))), тарабарская грамота какая-то))). Мое уважение.
Ну вы жжоте))),Какой там жжоте,задание домашнее горит!))))
Вот тут вспомниш о "стандартах". Меня вроде так глубоко не учили (94-96г.) Может у Вас школа с уклоном?
Может у Вас школа с уклоном?С углублённым изучением иностранных языков.)))
2. Даны пять трёхзначных чисел.Посчитать кол-во тех чисел,у которых сумма цифр равна А(число А вводится с клавиатуры)
{массивы опять-таки не использую, хоть это и изврат}
function getSum(a: integer)
begin
getSum := (a mod 10) + (a mod 100) div 10 + (a mod 1000) div 100;
end;
{процедура проверки равенства суммы А}
procedure test(a:integer)
begin
if getSum(a) = A then count := count + 1;
end;
var a1, a2, a3, a4, a5, A, count: integer
begin
{считываем числа}
readln(a1);
readln(a2);
readln(a3);
readln(a4);
readln(a5);
{считали A}
readln(A);
{сбрасываем счетчик}
count := 0;
{считаем-проверяем}
test(a1);
test(a2);
test(a3);
test(a4);
test(a5);
{выводим результат подсчета}
writeln(count);
end;
это НЕ валидный код на паскале, там 100% куча глюков, но, если обтесать напильником - вполне покатит как решение ЧАСТНОГО случая представленных задач.
ZilraenIMHO, эти задачи на использование массива. Иначе действительно изврат выйдет.
массивы опять-таки не использую, хоть это и изврат
IMHO, эти задачи на использование массива.я того же мнения, но:
Они массивы уже изучали?
Да нет.
Иначе действительно изврат выйдет.изврат уже вышел 😊 мне стыдно 😞
эти задачи на использование массива.Так как записать в тетрадь то?)))))))
Так как записать в тетрадь то?)))))))если не найдется полный и точный ответ - качайте Turbo Pascal 7.1 - и пробуйте скомпилировать, попутно исправляя те ошибки, которые я там наворотил. 😊
то, что получится в итоге - и запишите в тетрадь.
ЗЫ на том же сайте как раз и мануалки есть.
скомпилировать, попутно исправляя те ошибки, которые я там наворотил.Камрад,мне проще опять суахили вспомнить и на нём заговорить,чем Паскаля скомпилировать.))))Вот и прошу вариант,чтобы сразу в тетрадь.
ZilraenНе, ну это не выход. Я думаю Сергей оценит шутку. 😊
если не найдется полный и точный ответ - качайте
Я думаю Сергей оценит шуткуВсё равно спасибо))Жду,обещали ещё коньяк допить и тряхнуть старину Паскаля.)))))))
семен
Камрад,мне проще опять суахили вспомнить и на нём заговорить,чем Паскаля скомпилировать.))))Вот и прошу вариант,чтобы сразу в тетрадь.
DIZэто сорри, но по-другому пока не получается.
Не, ну это не выход. Я думаю Сергей оценит шутку.
может, чуть позже (это ведь не на завтра? 😊 ).
это пипец...бедный ребёнок...Серёг выдай её уже замуж,и ну нах ту учёбу...самое интересное, в 99% ей эта тарабарщина куй поможет борщ сварить...((((
Турбо паскаль скачнул у мня не работает никуя под 64 разрядную ось
Накропал по памяти
Прошло нормально.Но снова вот задали,опять за хелпом .Понимаю,что надоел,но больше не к кому.)))Такая задача: Дано четырёхзначное целое число.
а) посчитать произведение цифр этого числа,принадлежащих промежутку от 2 до 6
Program semen;
var n: Integer; { вводимое число}
var p: Integer; { тут будет произведение цифр этого числа,принадлежащих промежутку от 2 до 6}
var i: Integer; { индекс для цикла}
var m: Integer; { промежуточные вычисления}
var k: Integer; { промежуточные вычисления}
var b: Integer; { промежуточные вычисления}
var r: Integer; { результат}
p:=1; { инициализируем единицей}
m:=n;
for i := 0 to 3 do
begin
m:=n div 10; {получаем число без младшей цифры}
k:=n mod 10; { берем от деления числа на 10 т.е получаем младшую цифирь}
b:=k mod 2; { если b =0 то k четное иначе нечетное нихрена}
n:=m;
if k<2 and k»6 then {тут перемножим цифири кторые отдвух до шести}
p:=p*k;
end;
if b=0 and i>=2 then {тут если первые два числа четные обнуляем}
k:=0;
end;
r:=r+k*exp(i*ln(10)); {собираем число заново}
i:=i+1;
end;
Writeln(' произведение цифр этого числа,принадлежащих промежутку от 2 до 6=', p);
Writeln(' само чило=', r);
END.
Без массивов. Если что прошу прощения 15 лет прошло.
Коньяк вообще отстой. Убеждаюсь который раз. Перцовка наше все 😊
Серёг выдай её уже замуж,Она не хочет пока,я спрашивал.)))Хочет выучиться и что-то достичь в жизни.)))К замужеству её и я пока не готов,ещё слишком нервный,боюсь зятя угандошить сразу.))))
семен
К замужеству её и я пока не готов,ещё слишком нервный,боюсь зятя угандошить сразу.)
😀 😀 😀 😀 😀 😀 😀
Перцовка наше всеСпасибо.А какую пьёте?
семенвыходит мне ни куя не светит...(((... 😛 )))))))))))))))))))))
ещё слишком нервный,боюсь зятя угандошить сразу.))))edit log
Вообще ничего баловать если учиться собралась. Пусть программировать учиться. Для головы только польза. Приучает структурно мыслить. Тем более ничего принципиально сложного для понимания нет. Вот будет изучать какие нибудь турбулентные струи там да. Или гильбертовы пространства .Писец не разберешь что почем. Вот авиаконтсруктор Лавочкин в 70 лет пошел и на программиста выучился. А тут молодая умная красивая девчонка и ленится.
А вообще всех поздравляю. Желаю счастья здоровья вам и вашим детям особенно. Чтоб войны не было. Дети чтоб умные были и пошли дальше родителей 😊
QUOTE]Спасибо.А какую пьёте?[/QUOTE]
Немиров. больше никакую. Если вы интересуетесь в плане благодарности то во первых рановато (не отлажена программа в компиляторе) а во вторых я на общественных началах помог 😊 И вообще пьянство зло 😊
Second Maxииипать копать...а это ещё куда...??? ))))
Вот будет изучать какие нибудь турбулентные струи там да. Или гильбертовы пространства
Вообще ничего баловать если учиться собраласьДык она не по этому профилю,гуманитарий,как и все её близкие родственники.)))
Дык она не по этому профилю,гуманитарий,как и все её близкие родственники.)))Гуманитарий это гут. Тем более пригодиться. Гуманитариям думать надо. Пусть еще на формальную логику наляжет. Оч пригодиться
Гуманитариям думать надо.Да не голова светлая,учитель на дом приходит по математике к ЕГ готовит,хвалит очень,говорит что и к точным наукам талант есть.Но вот информатика никак,она себе отложила,что это ей не нужно и не идёт у неё.
Да не голова светлая,учитель на дом приходит по математике к ЕГ готовит,хвалит очень,говорит что и к точным наукам талант есть.Но вот информатика никак,она себе отложила,что это ей не нужно и не идёт у неё.Зря кстати, информатика в обычном виде по сути обычное пользование ПК. В вот программирование вообще-то процесс тонкий и творческий, и довольно интересный. Наверное в начале что-то незаладилось, теперь как затяжной отголосок... А в жизни... А в жизни все пригодится)
------------------
Снимаю. Порчу.
Сергей, так чего с задачками?
Сергей, так чего с задачками?Вот вроде Second Max на первую ответ дал,а на вторую не знаю даже.
Мне бы конечно допустим так:по первой задаче в тетрадь дословно пишем то-то,по второй то-то.И я был бы счастлив.Но всем коллегам спасибо за поддержку и участие.))))
миха гаи
ииипать копать...а это ещё куда...??? ))))
забей))
семен
Прошло нормально.Но снова вот задали,опять за хелпом .Понимаю,что надоел,но больше не к кому.)))
Поздно тему увидел.
С такими вопросами, проще, к be_happy, он с Паскалем, по старой памяти, дружен. Поэтому, в личку ему надо было постучать, а то, он в 5 не бывает. Сейчас, к сожалению, не в сети.
мне кажется, что таки надо. тем паче, что склонность к точным наукам есть. вс. эту школьную информатику можно разделить на 2 части. Алгоритмизация и написание программы. Языки написания варьируются. К графическим алгоритмам школьнеги относятся несколько своеобразно - типо всё просто. Но с кодом исть проблемы.
По задаче - есть некое число XYZX. Строчные функции использовать низзя.
Т.е. определение цифры сводится к делению нацело на 10. Эта операция выполняется 4 раза (задача простая, число не переменной длинны, а чётко 4-х значное, т.е. массиывами можно не пользоваться).
XYZX / 10 = XYZ, остаток X - переменная_4
XYZ / 10 = XY, остаток Z - переменная_3
XY / 10 = X, остаток Y - переменная_2
X / 10 = 0, остаток X - переменная_1
Для первой подзадачи (сколько раз в этом числе повторяется первая цифра) - надо сравнить значение переменной_1 со всеми остальными. Сколько раз равняется - столько и повторяется.
Для второго условия - делим нацело переменную_1 на переменную_4. Если остаток равен 0 - значит кратно, иначе - не кратно.
Первая задача:
Program p1;
Var
a,b,i,p : integer;
begin
write('Введите четырехзначное число: ');
readln(a);
p:=1; b:=a;
for i:=1 to 4 do
begin
if (b mod 10 >=2) and (b mod 10 «=6)
then
p:=p*(b mod 10);
b:=b div 10;
end;
writeln('а) Произведение цифр, принадлежащих промежутку 2..6: ',p);
write('b) Заменить на 0 первые две цифры, если они четные: ');
b:=a;
if ((b div 1000) mod 2) = 0
then write(0)
else write(b div 1000);
b:=b mod 1000;
if ((b div 100) mod 2) = 0
then write(0)
else write(b div 100);
b:=b mod 100;
writeln(b);
end.
О,Дмитрий спасибо!Миколе тоже благодарность!
Сергеич,так глядишь,и институт закончите...на ганзе сидючи,сдаётся мне зятя надо искать в пятой палате...)))
Вторая задача:
Program p2;
Var
a,i,s : integer;
b: array [1..5] of integer;
begin
for i:=1 to 5 do
begin
write('Введите ',i,'-e число: ');
readln(b[i]);
end;
write('Введите число A: ');
readln(a);
s:=0;
for i:=1 to 5 do
if (b[i] div 100 + b[i] mod 100 div 10 + b[i] mod 100 mod 10)=a
then s:=s+1;
writeln('Количество чисел, сумма цифр которых равна A: ',s);
end.
Обе работают, если что. Проверено. 😊
Обе работают, если что. ПровереноВот спасибо! Нужно проставляться.)))))))
на ганзе сидючиПриходится,вон в выживании Майор распоясолся,кинжалами тычит,боем ножевым бьётся с врагами,цифрами сыпит,отбиваюся тама.))))))
Не за что. 😊
семенпоржал...)))
кинжалами тычит,боем ножевым бьётся с врагами,цифрами сыпит,отбиваюся тама.))))))
семенЛарри Уолл тоже по образованию филолог, а самый хакерский язык создал - Perl!
Дык она не по этому профилю,гуманитарий,как и все её близкие родственники.)))
Я б с учителем поговорил, почему они ТурбоПаскаль выбрали? имхо VBA вполне сгодился бы. Тем более в каждом MS office есть. И если осовоить его хотя бы на самом мимнимальном уровне, в жизни обязяательно пригодилось бы.
Ожидаю скоро увидеть задачи на рекурсию, работу c графической подсистемой, с файлами и тп=)))
семенВидимо в отца. 😊
гуманитарий,как и все её близкие родственники.)))
Ожидаю скоро увидеть задачи на рекурсию, работу c графической подсистемой, с файлами и тп=)))это вряд ли 😊
на первом курсе инста - будет.
в школе - слабо верится.
ЗЫ по поводу паскаля - по-доброму завидую - у меня в школе был только, прости гспади, gw-basic, и то в весьма ограниченном объеме.
а алгоритмической подготовки не было вовсе.
Видимо в отца.Ага.)))Да,а твой вариант решения задач, с использованием массива?Сегодня ребёнок проскочил,задание не сдал,завтра будет отдавать,но узнала вводную,что нужно их решить без использования этого массива.
Вариант Zilraen вместо массива функцию использует. Это будет еще более шикарный вариант "проскока". 😊
Хорошо, я еще подумаю. Не охота совсем уж глупостью заниматься.
Сергей, я тебе как на духу скажу, в задаче этой должен использоваться массив, что бы там препод не говорил. 😊
что бы там препод не говорил.Так вроде она пробила, на тех, кто сдавал с использованием массива,препод плотоядно скалился и требовал пояснений(массив то они не проходили),все и "поплыли" сразу,поэтому, как бы оформить эти задачи без этого массива?
))Блин,сам уже запутался,пора видимо к преподу, на беседу,на языке Паскаля ,папе подъезжать.)))
Вариант Zilraen вместо массива функцию использует. Это будет еще более шикарный вариант "проскока". Хорошо, я еще подумаю. Не охота совсем уж глупостью заниматься.можно заняться работой компилятора и приинлайнить ее, для получения совсем уж китайского кода 😊
Сергей, я тебе как на духу скажу, в задаче этой должен использоваться массив, что бы там препод не говорил.ага, согласен.
Каждый раз ходить в школу по пустякам - калоши стопчешь.
Чего-нибудь сочиним. Понимаешь, как если б кому-то дали задание с помощью АКМ танк подорвать. Вроде и решаемая, но встает вопрос за каким ... 😊
{это лютый, леденящий душу п-ц. слабонервным не смотреть.}
{решение задачи без массивов и использования функций.}
{ЗЫ синтаксис паскаля помню хреновенько, если где есть ошибки - поправьте плиз}
var
{разбиваем по группам для пущего удобства}
a1, a2, a3, a4, a5: integer;
s1, s2, s3, s4, s5: integer;
A, count: integer;
begin
{считываем числа}
writeln('Введите 5 чисел:');
readln(a1);
readln(a2);
readln(a3);
readln(a4);
readln(a5);
writeln('Введите число для сравнения:');
readln(A);
{считаем суммы.}
{делаем это заранее, чтобы не громоздить дофига всего в условия}
s1 := (a1 mod 10) + (a1 mod 100) div 10 + (a1 mod 1000) div 100;
s2 := (a2 mod 10) + (a2 mod 100) div 10 + (a2 mod 1000) div 100;
s3 := (a3 mod 10) + (a3 mod 100) div 10 + (a3 mod 1000) div 100;
s4 := (a4 mod 10) + (a4 mod 100) div 10 + (a4 mod 1000) div 100;
s5 := (a5 mod 10) + (a5 mod 100) div 10 + (a5 mod 1000) div 100;
{сбрасываем счетчик}
count := 0;
{проверяем}
if s1 = A then count := count + 1;
if s2 = A then count := count + 1;
if s3 = A then count := count + 1;
if s4 = A then count := count + 1;
if s5 = A then count := count + 1;
{выводим результат подсчета}
writeln("Результат: ", count);
end;
Понимаешь, как если б кому-то дали задание с помощью АКМ танк подорвать.Дали бы такое,я бы справился.))))А препод сегодня ещё классу заявил-сдаёте мол эти задачи,до конца года никого не трогаю,на информатике просто в интернете сидите.Вот и пойми этих преподов.))))
семенПочему-то даже не сомневаюсь. 😊
Дали бы такое,я бы справился.))))
Ща вот комрада проверю, что он там написал. 😊
леденящий душу п-ц.Это точно))))))Взглянул и вздрогнул.То ли дело в моём интернате было,оттренировался утро-вечер и свободен,с учёбой не докучали особо, а такое граффити зашифрованное мне в самом страшном сне не приходило)))))))
Последние две строки изменить на:
writeln('Результат: ', count);
end.
А так все правильно.
А так все правильноЭто первая задача?
Это первая задача?вторая 😊
И там еще в процессе вычисления суммы цифр
(a? mod 10) + (a? mod 100) div 10 + (a? mod 1000) div 100;
выделенное действие лишнее. Но это мелочи. 😊
выделенное действие лишнее.рассчитывалось под хитрое училко, которое возьмет и введет больше, чем 3 разряда 😊
к слову, в идеале там должен был бы быть цикл, чтобы не зависеть от разрядности, ну да ладно 😊
Согласен. 😊 В идеале там много еще каких проверок надо бы.
Zilraens:=0;
в идеале там должен был бы быть цикл, чтобы не зависеть от разрядности
while a<»0 do
tmp:=a mod 10;
s:=s+tmp;
a:=a div 10;
end;
Пжалста =) (если все правильно помню конечно)
Подпишусь на тему, а то я любил кодить на паскале такие простенькие задачки когда в универе учился =)
------------------
AB(IV) Rh+
s:=0;ага, как вариант.
while a«>0 do
tmp:=a mod 10;
s:=s+tmp;
a:=a div 10;
end;
=) (если все правильно помню конечноДруги,спасибо за поддержку,но я уже запутался,извините,ну не шарю в этом.
Как задачи то окончательно оформить с учётом всех поправок,без массива,
задача 1?
задача 2?
Сергей, первую задачу я уже постил. Вторую вчера переписал Zilraen без использования массива (две последние строки только подкорректировать). Можно сдавать.
Понял.Всем огромное спасибо!)))
ребят, какого хера вы тут в каюте делаете....вам по академиям сидеть нужно,а вы вискарь, да телок с сиськами навыкат ,обсуждаете тута...)))))))))))))))
вам по академиям сидетьВидишь,сколько здесь компетентных людей,академики в своих отраслях,в вискаре и сиськах с тёлками тоже специалисты.)))А мне сегодня сочинение походу корректировать придёться, по Достоевскому,образ Раскольникова.Я люблю литературу,но Фёдора Михайловича не понимаю,мне бы лучше сиськи обсудить,чем убийство старухи-процентщицы.)))))))
В человеке должно быть все прекрасно: и лицо, и одежда, и душа, и мысли (от себя добавлю) и ноги, и сиськи. 😊
семенпо большому счету Раскольников то маладца,что грохнул бабушку...во всяком случае чувствуетсо революционный дух,и зарождение нового мышления у человека...
мне бы лучше сиськи обсудить,чем убийство старухи-процентщицы.)))))))
...всех убить,всё отнять...(с))))))))))))))
семенЗато ты много чего другого понимаешь. 😊
Я люблю литературу,но Фёдора Михайловича не понимаю
во всяком случае чувствуетсо революционный дух,и зарождение нового мышления у человека...Ты ещё "Бесов" прочти,про революционный дух,для полноты картины.)))
но Фёдора Михайловича не понимаю
А я вчера, помогал найти "глубокий" смысл в "Куст сирени" Куприна. 😞
Я для себя, в детстве решил, все что в ходит в школьную программу, надо или раньше читать, до того как "преподавать" начали, или намного позже, через несколько лет, когда забудется весь тот бред которому учили.
Правда, всегда интересно было, если бы сегодня, "классические" писатели прочитали, от том какой смысл вкладывали они в произведения, под впечатлением чего, написали произведение, и прочие измышления критиков, которым учат в школе, они бы сильно ох...нели? Думаю, что да.
В человеке должно быть все прекрасно: и лицо, и одежда, и душа, и мысли (от себя добавлю) и ноги, и сиськи.
Поддерживаю! И еще, ножик, ножик должен быть! 😊
семен
Прошло нормально.Но снова вот задали,опять за хелпом .Понимаю,что надоел,но больше не к кому.)))Такая задача: Дано четырёхзначное целое число.
а) посчитать произведение цифр этого числа,принадлежащих промежутку от 2 до 6
б)заменить на НОЛЬ первые две цифры этого числа,если они чётные
И вторая задача:
Даны пять трёхзначных чисел.Посчитать кол-во тех чисел,у которых сумма цифр равна А(число А вводится с клавиатуры)
Задачи нужно опять на языке Турбо-Паскаль.Выручайте,камрады!
Какая интересная тема!
Ещё не поздно предложить свои решения?
В задании не сказано, использовать операции только с числами, или можно задействовать строки. Поэтому 1 и 3 прогу сделал с числами, а во 2-й использовал перевод в строки. Проги написаны и отлажены в Borland Pascal for Windows, поэтому подключен модуль WinCrt. В DOS-Pascal его можно вообще стереть, или использовать модуль Crt.
Кроме того, передайте преподу, что он мудак. Потому что НИКОГДА нельзя ограничивать пользователя вводом конкретного кол-ва цифр. Нормальная прога должна сама считать цифры. В 1 и 3 прогах кол-во цифр не важно. Хотите 1-2-3-4-5, лишь бы число было в диапазоне типа integer. Со строками я не стал заморачиваться и просто проверял на чётность первые 2 цифры любого числа.
Program A;
uses WinCrt;
var
Num,n,s,f: Integer;
begin
s:=1;
f:=0;
Write('vvedite chislo: ');
ReadLn(Num);
While Num»=1 do
begin
n:=Round(Frac(Num/10)*10);
if (n>=2) and (n«=6) then
begin
f:=1;
s:=s*n;
end;
Num:=Round((Num-n)/10);
end;
if f=0 then Writeln('net tsifr ot 0 do 6')
else Writeln('itog=',s);
end.
Program B;
uses WinCrt;
var
Num,c,f: Integer;
s:string;
begin
Write('vvedite chislo A: ');
ReadLn(Num);
Str(Num,s);
Val(s[1],c,f);
if c mod 2 = 0 then s[1]:='0';
Val(s[2],c,f);
if c mod 2 = 0 then s[2]:='0';
Writeln(s);
end.
Program C;
uses WinCrt;
var
Num,i,Tsh,s,n: Integer;
begin
Write('vvedite chislo A: ');
ReadLn(Num);
For i:=1 to 5 do
begin
Write('vvedite ',i,'-e 3-h znachnoye chislo: ');
ReadLn(Tsh);
s:=0;
while Tsh»=1 do
begin
n:=Round(Frac(Tsh/10)*10);
inc(s,n);
Tsh:=Round((Tsh-n)/10);
end;
if s=Num then Writeln('Ravno!')
else Writeln('Ne ravno!')
end;
end.
Ещё не поздно предложить свои решенияСпасибо! Не поздно,препод заболел сегодня,в четверг теперь занятия по информатике.
семен
Спасибо! Не поздно,препод заболел сегодня,в четверг теперь занятия по информатике.
Уточните только, проги должны работать только с числами, или можно переводить в строки.
Кстати, я преподаю элементарный Паскаль программистам на 1-м курсе одно технического универа 😛. Далее мы переходим на Delphi и С++Builder. Так что школьный препод может не понять изящества моих алгоритмов 😀.
Так что школьный препод может не понять изящества моих алгоритмовМне бы попроще,чтобы препод понял,а то обидится ещё,не нужно унижать его знаниями.))))
Кстати, если объединить задания А и В первой задачи в одну программу, то можно сделать так: АВ - только через мат.вычисления, ВА - с переводом числа в строку.
ВА работает строго с 4-х значным числом. АВ - любое число в пределах диапазона integer: от -32768 до 32767.
ВА выведет первые нули в строке, если они получатся. АВ не выведет левые нулевые разряды, т.к. Паскаль при выводе чисел первые нули не печатает.
Program AB;
uses WinCrt;
var
Num,n,s,f,k: Integer;
bez0:real;
begin
Write('vvedite chislo: ');
ReadLn(Num);
bez0:=0;
s:=1;
f:=0;
While Num>=1 do
begin
n:=Round(Frac(Num/10)*10);
if (n>=2) and (n«=6) then
begin
f:=1;
s:=s*n;
end;
if (Num»=1) and (Num«=99) and (n mod 2 = 0) then bez0:=bez0/10
else bez0:=(bez0+n)/10;
Num:=Round((Num-n)/10);
inc(k);
end;
for n:=k downto 1 do bez0:=bez0*10;
n:=Round(bez0);
if f=0 then Writeln('net tsifr ot 0 do 6')
else Writeln('proizvedenie= ',s);
Writeln('tshislo s zanenoi 0= ',n);
end.
Program BA;
uses WinCrt;
var
Num,c,f,h,sum,i,l: Integer;
s:string;
begin
Write('vvedite chislo A: ');
ReadLn(Num);
sum:=1;
Str(Num,s);
l:=Length(s);
if l<»4 then
begin
Writeln('Ne 4 tsifri!');
exit;
end;
for i:=1 to 4 do
begin
Val(s[i],c,h);
if (c>=2) and (c«=6) then
begin
f:=1;
sum:=sum*c;
end;
if (i<=2) and (c mod 2 = 0) then s[i]:='0';
end;
if f=0 then Writeln('net tsifr ot 0 do 6')
else Writeln('proizvedenie= ',sum);
Writeln('tshislo s zanenoi 0= ',s);
end.
Надо будет студентам дать такую задачу: чтобы сделали анализ цифр в числе 2-мя вариантами 😊.
ZilraenСлегка модифицированный вариант вашей проги. 😊
{это лютый, леденящий душу п-ц. слабонервным не смотреть.}
var
a1, a2, a3, a4, a5: integer;
A, count: integer;
begin
{считываем числа}
write('Введите 5 чисел: ');
readln(a1,a2,a3,a4,a5);
write('Введите число для сравнения: ');
readln(A);
count:=ord(a1 mod 10 + a1 mod 100 div 10 + a1 div 100=a)+
+ord(a2 mod 10 + a2 mod 100 div 10 + a2 div 100=a)+
+ord(a3 mod 10 + a3 mod 100 div 10 + a3 div 100=a)+
+ord(a4 mod 10 + a4 mod 100 div 10 + a4 div 100=a)+
+ord(a5 mod 10 + a5 mod 100 div 10 + a5 div 100=a);
{выводим результат подсчета}
writeln('Результат: ', count);
end.
Народ а как вчера на ганзу зашли? У меня ни в какую.
вот мой отлаженный первый если что
PROGRAM SEMEN1;
VAR N,I,J,K,R,P,B,S: INTEGER;
BEGIN
WRITELN('VVETDITE 4 ZNACHNOE CHISLO');
READLN (N);
IF (N<1000) OR (N»9999) THEN
BEGIN
WRITELN('NEPRAVILNY VVOD CHISLA');
EXIT;
END
ELSE
BEGIN
P:=1;
FOR I:=0 TO 3 DO
BEGIN
K:=N MOD 10;
N:=N DIV 10;
B:=K MOD 2;
IF (K>2) AND (K«6) THEN
BEGIN
P:=P*K;
END;
IF (I»1) AND (B=0) THEN
BEGIN
K:=0;
END;
S:=1;
IF (I>0) THEN
BEGIN
FOR J:=1 TO I DO
BEGIN
S:=10*S;
END;
END;
R:=R+S*K;
S:=0;
END;
IF (P=1) THEN P:=0;
WRITELN('NOVOE CHISLO =',R);
WRITELN('PROIZVEDENIE ZNAKOV 2-6=',P);
END;
Поставил ХР второй системой на нее турбо паскаль. Тормозит ужасно. А кто чем пользуется?
Вторую решили как понял.
Вот тут Free Pascal можно качнуть под разные оси.
Не получилось отсюда в тот раз. Попробуем еще на всякий случай. А у Семена дочке еще долго в школе учиться?
А у Семена дочке еще долго в школе учитьсяВ следующем году заканчивает.)))
Сергей, похоже? 😊
Сергей, похожеЧто тоже с Паскалем не дружит?)))Видно сразу.))))
Думаю он и книжек не читает. 😊