Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Решить задание по программированию


Recommended Posts

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

  • +1 1
Link to post
Share on other sites
13 минут назад, buslikdrev сказал:

Есть на русском?

В таком варианте предоставили

Link to post
Share on other sites

А что на курсах не растолковали что к чему? Если сыну действительно это нужно, гугл ему в помощь (если на курсах нормально не объяснили или прохлопал ушами), пусть упрется лбом и пробует решить свой вопрос... Если сам не разберется, то толку не будет.

  • +1 1
Link to post
Share on other sites
Только что, Marinka777 сказал:

В таком варианте предоставили

Тогда держите такой ответ на все задания: https://developer.mozilla.org/en-US/docs/Web/JavaScript

  • +1 1
Link to post
Share on other sites
39 минут назад, Marinka777 сказал:

Cыну на курсах задали задание

 

а в чем смысл курсов?

Я наивно полагал, что курсы добровольно проходят с целью познания нового и приобретения навыков, которые нужны в дальнейшей работе.

 

На работе у вашего сына тоже будет кто-то, кто все будет выполнять за него?

 

Без самостоятельного решения задач программистами не становятся. Разве не так?

Link to post
Share on other sites

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

Link to post
Share on other sites

в разделе платных услуг пробовали?

 

Link to post
Share on other sites

Кто-то кстати решил первую задачку?
Мне стало интересно и я так залип что минут наверное 15 потратил и все равно решение мне не совсем нравится, хотя и делает вроде то, что нужно, ну почти. Просто по условии задачи нужно использовать именно callback а  тут больше бы подошел Promise  чтобы можно было вернуть назад значение после выполнения setTimeout 
Может кто предложит более красивое и правильно решение? 
Там вся загвоздка в том, что return в функции addString не работает потому он вызывается внутри setTimeout и функция возвращает результат до того, как setTimeout выполниться. Следовательно в result в addAll() всегда будет undefined 

короче у меня как-то так получилось 
 

function addString(callback) {
  setTimeout(callback(), Math.floor(Math.random() + 100) + 1);
}

function addAll() {
  addString(() => callback("A"));
  addString(() => callback("B"));
  addString(() => callback("C", true));
}

function callback(current, printResult = false) {
  if (typeof callback.sesult === "undefined") {
    callback.sesult = "";
  }

  callback.sesult += ` ${current}`;

  if (printResult) {
    console.log(callback.sesult);
  }
}

addAll();

 

Link to post
Share on other sites
18 hours ago, Marinka777 said:

Cыну на курсах задали задание

17195481_original.jpg.526f616fe4fa1de84b39a586c52dc2a4.jpg

Link to post
Share on other sites

А мне по приколу такие задачки решать и интересно и узнаешь что-то новое, учишся. 

Еще один вариант первого задания через промис + async await 
этот вариант мне нравится намного лучше
именно его я бы и использовал на практике в подобной ситуации

НО тут нету callback функции, как требует задание, поэтому по условиям задания этот вариант неправильный. 
 

function addString(previous, current) {
  return new Promise((resolve) =>
    setTimeout(
      () => resolve(previous + " " + current),
      Math.floor(Math.random() + 100) + 1
    )
  );
}

async function addAll() {
  let result = await addString("", "A");
  result = await addString(result, "B");
  result = await addString(result, "C");
  console.log(result);
}

addAll();

 

Link to post
Share on other sites
12 минут назад, sv2109 сказал:

 


function addString(previous, current) {
  return new Promise((resolve) =>
    setTimeout(
      () => resolve(previous + " " + current),
      Math.floor(Math.random() + 100) + 1
    )
  );
}

async function addAll() {
  let result = await addString("", "A");
  result = await addString(result, "B");
  result = await addString(result, "C");
  console.log(result);
}

addAll();

 

 

В итоге сайт бы не работал на моём android 5 с браузером Chrome 43

Link to post
Share on other sites
8 минут назад, buslikdrev сказал:

В итоге сайт бы не работал на моём android 5 с браузером Chrome 43

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

 

Спойлер

"use strict";

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

function addString(previous, current) {
  return new Promise(function (resolve) {
    return setTimeout(function () {
      return resolve(previous + " " + current);
    }, Math.floor(Math.random() + 100) + 1);
  });
}

function addAll() {
  return _addAll.apply(this, arguments);
}

function _addAll() {
  _addAll = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
    var result;
    return regeneratorRuntime.wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return addString("", "A");

          case 2:
            result = _context.sent;
            _context.next = 5;
            return addString(result, "B");

          case 5:
            result = _context.sent;
            _context.next = 8;
            return addString(result, "C");

          case 8:
            result = _context.sent;
            console.log(result);

          case 10:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return _addAll.apply(this, arguments);
}

addAll();

 

 

Link to post
Share on other sites
2 часа назад, buslikdrev сказал:

В итоге сайт бы не работал на моём android 5 с браузером Chrome 43

 

2 часа назад, sv2109 сказал:

при чем тут ваш браузер, это тестовая задача, про браузеры там ничего не было :)

 

Тоже не понял причем тут старый браузер? Да и не очень старый, пусть.

Тестовая задача, явно подразумевающая использование всей мощи JS в его современном виде.

Одного беглого взгляда достаточно чтобы узреть применение "let", которое мягко говоря, намекает на использование свежего стандарта JS.

Link to post
Share on other sites
В 10.10.2021 в 16:51, Marinka777 сказал:

Добрый день ребята.

Cыну на курсах задали задание, если есть время и желание то помогите решить
1. https://prnt.sc/1vkt5br
2. https://prnt.sc/1vkt9g3
3. https://prnt.sc/1vktcin

4. https://prnt.sc/1vku9kh

5. https://prnt.sc/1vkufp2

Если сын на курсах, и не решает поставленные задачи, не способен в них разобраться и найти решение. т.е problem solving skill на нуле и не может загуглить решение подобного на stackoverflow, то вероятно Вы тратите деньги время зря.

Не мне Вас учить как воспитывать сына, если бы он пришел на форум и попросил помощи, мол не могу разобраться, думаю можно было бы помочь. Но когда за пацана мама идет за помощью... Вы кого тряпку воспитать хотите? Мужик должен уметь сам находить решение своих проблем.

  • +1 2
Link to post
Share on other sites
3 часа назад, ocdev_pro сказал:

Если сын на курсах, и не решает поставленные задачи, не способен в них разобраться и найти решение. т.е problem solving skill на нуле и не может загуглить решение подобного на stackoverflow, то вероятно Вы тратите деньги время зря.

Не мне Вас учить как воспитывать сына, если бы он пришел на форум и попросил помощи, мол не могу разобраться, думаю можно было бы помочь. Но когда за пацана мама идет за помощью... Вы кого тряпку воспитать хотите? Мужик должен уметь сам находить решение своих проблем.

"Благими намерениями вымощена дорога в ад."

 

А может мама отправила сына учиться на программиста(там хорошо платят и работа легкая), а сын хочет быть электриком/танцором/кассиром(кем-угодно).

И вот говорит - мама не могу решить, хоть убейте. И это решение его проблемы(не решать это и улететь с этих курсов), а не с той, с которой мама пришла на форум. Мама пришла за решением своей проблемы. 

"Что бы вы ни делали, но, увы, дети не хотят быть теми, кем когда-то мечтали, но так и не стали вы!"

Edited by niger
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.