Printable Version of Topic
Click here to view this topic in its original format |
Forums > Флейм > Ищу доброго Java-программера, помощь нужна - уроки или консультации, что ли... |
Posted by: WhiteRabbit on 22-12-2006, 11:22 |
Ребяты, излагаю ситуацию. 1)Мой мелкий, 14 лет, пытается освоить в универе курс Java 2)В познаниях где-то возникли дыры, - с конкретным заданием человек не справился и не знает, как справиться. Видимо, где-то упущена теория, не только практика. 3)Я помочь ему не могу - от программирования по жизни я еще дальше, чем от Луны, а попытки освоить что-то по самоучителям хоть и двигаются куда-то медленно и печально, за университетским курсом явно не успевают. 4)Попытки найти учителя через агентство потерпели полный крах: присланный учитель честно признал, что с такой задачей справиться не может и обещал поискать кого-нить со знаниями потолще - но до сих пор не нашел. Отсюда - вопрос: есть ли у нас на форуме человек, разбирающийся в Java и, более или менее, математике, живущий где-нить не очень далеко от Иерусалима, который согласился бы дать несколько частных уроков - не забесплатно, конечно. |
Posted by: sdandrey on 22-12-2006, 13:48 |
ну вобще-то,консультации у професора и асистентов никто еще не отменял.пусть сходит,поговорит.у них есть приёмные часы для студентов и за эти часы професор и ассистент получают деньги |
Posted by: Zemlynin on 22-12-2006, 16:44 |
Надо к Брайту обратиться,однако за последствия неручаюсь ![]() |
Posted by: Set on 22-12-2006, 19:25 |
Почему бы прям тут эту задачку не выложить... ![]() |
Posted by: WhiteRabbit on 22-12-2006, 19:44 |
Set Я выложу, нет проблем - просто, я думаю, дело не в частном решении... Парень что-то пропустил важное, наверное, - вот и хотелось бы понять, что именно и восполнить... А задачка такая: Exercise number 5 __________________ The simplest approximation technique for finding the solutions of an equation f(x) = 0 ( called the roots of the function f ) is the technique of bisection, which looks for changes of sign in the function f. The idea is to start with an interval [a,b] such that f(a)<0 and f(b)>0 ( we assume that f is defined in all the interval and that f is continuous there ). We halve the interval and compute the function in the middle point m. If f(m) >= 0 the same process continues for the interval [a,m], i.e. we assign m to b. If f(m) < 0 the process continues for the interval [m,b] - we assign m to a. The process is stopped when we get the interval [a,b] for which abs( f(b) - f(a) ) < 1.0e-5 1.0e-5 is 0.00001. Write an application to find the root of a function f. The user will enter the values of a and b. The program will call a method bisection to perform the computations. The value of the root will be displayed by the method main. The method bisection will get 2 parameters -The method bisection will get 2 p a and b of the interval, and will return the root. The method will use another method - f to define the function. To compute the absolute value - use the method Math.abs. The Exercise Print-out ________________________ For the exercise print-out use the function f(x) = x^3 - x - 1 with the interval [0.0, 3.0] To compute x^3 - write x*x*x - or use the method Math.pow to write Math.pow( x, 3 ). To print - follow the instructions listed in Exercise number 1. |
Posted by: Fellow on 22-12-2006, 20:09 |
Imho, чтобы не справиться с таким заданием, надо пропустить вообще всё ... Это у него первый язык программмирования? И умеет ли он писать хотя бы простые программмки ("Hello world")? Тут ведь даже алгоритм уже расписан - просто бери и пиши сразу код ... |
Posted by: Jedd on 22-12-2006, 20:18 |
Скорее всего проблема не с Ява, а с переводом задачи в четкий алгоритм. Пусть сначала нарисует блок-схему. |
Posted by: Lord KiRon on 22-12-2006, 20:31 |
Кстати в 14 лет универ это не слабо. А задачка действительно из базовых . |
Posted by: Set on 22-12-2006, 20:42 |
Единственный раз когда я пользовался блок-схемой был экзамен на первом курсе... н-дасс, это была фатальная ошибка, чуть не облажался, за полчаса до конца выкинул её нафиг и на коленке всё забацал. ![]() ![]() |
Posted by: sdandrey on 22-12-2006, 21:09 |
действительно базовая задачка,алгоритм элементарный.могу код в матлабе , С или бэйсике накатать,джаву не знаю |
Posted by: Set on 22-12-2006, 21:14 |
Создаём класс с 3-мя методами: main, bisection, f. "main" запрашивает у юзера значения a и b, передаёт их методу "bisection", затем отображает возвращённое им значение, которое и есть искомый результат. "f" получает в качестве аргумента "x", считает по указанной формуле (f(x) = x^3 - x - 1) и просто возвращает значение. "bisection" собственно считает корни, вот таким приблизительно раком: while (Math.abs(f(b) - f(a)) >= 1.0e-5) { m = ( a + b ) / 2; If (f(m) >= 0) b = m else a = m; } |
Posted by: WhiteRabbit on 22-12-2006, 22:06 |
Fellow Да, это у него первый язык программирования - и задачка с пятого всего-то занятия, так что про "пропустить все" речь не идет, он это "все" еще не осваивал, чтобы пропускать. ![]() Да, в принципе простые программки он писать умеет - из 9 заданий на данный момент не справился с этим одним, и я, если честно, просто не представляю, что у него там не пошло - математическое решение, алгоритм или собственно как в каком-то месте код прописать. Set Большое спасибо. Щас я ему покажу и будем разбираться. Если не справимся с чем-то опять - я тебя еще спрошу, ладно? Я понимаю, что у меня, наверное, как в том анекдоте, в ДНК ошибка... ![]() ![]() Added: Set Еще раз большое спасибо! ![]() ![]() |
Posted by: Сергей Иванович on 22-12-2006, 23:08 |
А всё же, если не секрет, что именно и почему не получалось? |
Posted by: WhiteRabbit on 23-12-2006, 00:30 |
Да какой там секрет. Не получался вот именно тот кусок, который Set привел(это ж надо так идеально уловить суть проблемы - мои аплодисменты!), а причина - обхохочешься: парень запутался промеж функциями и их производными, погрязнув в мысленных переводах терминов между русским, английским и ивритом. Это не незнание собственно Java было, а просто перепутанница в голове.![]() |
Posted by: sdandrey on 23-12-2006, 00:52 |
вобще ,идиотизм: начинать програмированию учить с джавы или С.для изучения програмирования(постройка алгоритмов,логика и т.д) наилутшими являются бэйсик ,паскаль и фортран |
Posted by: FiL on 23-12-2006, 01:07 |
для обучения ОБЪЕКТНОМУ программированию не надо изучать ПРОЦЕДУРНЫЕ языки. Абсолютно другая логика. Хотя, для общего развития и не помешает, конечно ![]() |
Posted by: Uzaren on 23-12-2006, 01:52 | ||
|
Posted by: Lord KiRon on 23-12-2006, 02:02 |
Болтуны все ![]() |
Posted by: WhiteRabbit on 23-12-2006, 02:37 | ||
![]() Можно подумать - это я придумала. ![]() |
Posted by: sdandrey on 23-12-2006, 05:39 | ||||
на бэйсике ,фортране и паскале и сейчас много работают.например в инженерных расчетах фортран намного удобней чем C |
Posted by: admik on 23-12-2006, 07:33 |
бейсик - это не программы, а макросы писать. фортран тут при чем? сугубо прикладной язык, вещь отличная, но не для освоения программирования. |
Posted by: Sidorini on 23-12-2006, 08:27 | ||
|
Posted by: admik on 23-12-2006, 10:24 |
Sidorini да конечно можно, но толку? основное направление имело в виду ![]() |
Posted by: Uzaren on 23-12-2006, 12:11 | ||
![]() |
Posted by: sdandrey on 23-12-2006, 14:45 |
на програмёров,обычно,идут учиться те,кто уже имеет понятие о том,что такое код и счем его едят ![]() admik,не скажи,фортран очень хорош для обучения програмированию ![]() |
Posted by: Uzaren on 23-12-2006, 15:12 | ||
![]() ![]() |
Posted by: sdandrey on 23-12-2006, 17:30 | ||
а про програмёров я,вообще ,молчу: люди , которые заканчивали школы или техникумы с програмёрской специализацией, заваливают начальные и не только курсы по С |
Posted by: Lexus on 23-12-2006, 20:19 |
У меня в универе програмирование начинается с Явы, потом C#, C++ Те кто на факульте математике, то Матлаб, ява и всё ![]() |
Posted by: Lexus on 23-12-2006, 20:19 | ||
|
Posted by: Enot Pk on 23-12-2006, 23:32 |
Вот у меня на сканере от Symbol'a ОСя на Си. И что? Там такие глюки (например, "двоящийся товар"), что на Бэйсике они если бы и возникли, то удалялись бы за 10 минут. Если кому интересно - в Мск я завтра в Ашане (м. Тёплый стан) с 8 до 18-19. Бэйдж СТО 28590, Ашан - ¹1948 (на планшетку). Продемонстрирую. А что до блок-схем, то их надо уметь состалять. Я могу. Имхо - Си маст дай, а "процедурность" не всегда панацея. Да и всё равно всё уходит в машкод, а он один и тот же. |
Posted by: sdandrey on 23-12-2006, 23:36 | ||||
![]() |
Posted by: Lexus on 24-12-2006, 12:34 | ||
![]() |
Posted by: sdandrey on 24-12-2006, 13:08 |
стучись в аську |
Posted by: obaldin on 30-12-2006, 18:59 | ||
|
Posted by: obaldin on 30-12-2006, 19:20 | ||
![]() |
Posted by: sdandrey on 30-12-2006, 22:14 | ||
кто такой вирт не знаю, но я писал и еще раз могу повторить
это жестокая правда и проверено много раз |
Posted by: obaldin on 30-12-2006, 22:41 | ||||
|
Posted by: sdandrey on 30-12-2006, 23:41 | ||
|
Posted by: obaldin on 31-12-2006, 00:30 | ||
![]() |
Posted by: piligrim on 31-12-2006, 00:47 |
вот и добрый Java-программер пришел ![]() |
Posted by: sdandrey on 31-12-2006, 01:54 | ||||
![]() |
Posted by: dmvn on 31-12-2006, 02:25 | ||
![]() |
Posted by: mts on 31-12-2006, 02:31 | ||||||
|
Posted by: obaldin on 31-12-2006, 02:48 | ||||
![]()
(Это еще читабельный пример, добейте его строчек до 400, тогда посмотрим)
|
Posted by: obaldin on 31-12-2006, 02:55 | ||
![]() |
Posted by: dmvn on 31-12-2006, 03:46 | ||
б) Если ты не профи, то на @#$%^^%$## ТАК писать? Пиши проще, комментируй. Сколько лет пишу на С++, ни разу такого не приходилось писать. в) Утверждение. 1) На любом языке программирования можно написать нечитаемый код. 2) На любом языке программирования можно написать абсолютно читаемый код. Доказательство. Неформализуемо, зато 1) и 2) подтверждено миллиардами примеров. P.S. Кажется, тему надо закрывать. |
Posted by: obaldin on 31-12-2006, 04:25 | ||
|
Posted by: zx666 on 31-12-2006, 04:38 | ||||
![]() |
Posted by: FiL on 02-01-2007, 05:31 | ||||
![]() Но таки да, я говорю о императивных языках. Про функциональные тут речь вообще не шла (да и не используются они нигде толком, так Lisp где-то в автокаде, да всякие около-академические области). А вот для понимания принципов объектного программирования (причем на чисто-объектных языках, типа смолтока) знания и опыт императивного программирования не помогут. И даже будут мешать на первых порах. По себе сужу. |