Math for Developers Homework - Ruse, October 2015
Здравейте, колеги!
Споделям с вас домашното си за тема Math for Developers https://www.dropbox.com/s/8dfv3ivb1re4bq7/Math%20for%20Programmers.docx?dl=0
Надявам се да го прегледате в тези последни часове преди крайният срок, и да споделите критики и впечатления. (и код, ако някой е писал C# програмка за задачите, както направих за 1-ва до 4-та) Благодаря предварително!
Благодаря ти за пълноценният отговор, ще имам предвид съветите ти!
На мен лично би ми помогнало много, ако има откъде да видя готов код и да се опитам да му проследя логиката :)
Занимавал съм се с Basic level HTML tutorials преди този курс, и C# ми е доста по-объркващ на този етап :)
Привет
Значи относно разглеждането на код, ако C# ти изглежда объркващ все още те съветвам да погледнеш ето тук една много интересна и полезна книга “Въведение в програмирането със C#” (която можеш да четеш и в онлайн вариянт), в която освен теория има и много готов разписан код за разглеждане, плюс това с доста добри обяснения след всеки. На мен ми беше много полезна в началото, надявам се и на теб да ти е от полза.
С домашното всичко изглежда наред, но и аз бих се радвал, ако споделиш кода на задачите.
Благодаря, мисля да се занимавам с книжката редом с лекциите, и да вървя поетапно.
Ето кода за показване на всички prime numbers от 0 до зададена от вас стойност, показвайки и позицията на съответния prime number. Използвах помощ и от гуглето, защото срещнах някои трудности, които не можах да реша сам. Писах задачите на LINQPad (който ви го препоръчвам) и затова ми е останал кода само на тази. Ако желаете, ще реша и останалите отново.
class PrimeNumbers
{
public static void Main() {
int amountOfPrimeNumbers, counter=0;
bool prime=true;
Console.WriteLine("Show prime numbers from 0 to (enter number): ");
amountOfPrimeNumbers=int.Parse(Console.ReadLine());
for (int i=2; i<=amountOfPrimeNumbers; i++)
{
for (int k=2; k<=amountOfPrimeNumbers; k++)
{
if (i!=k && i%k==0)
{
prime=false;
break;
}
}
if (prime)
{
Console.WriteLine("("+counter+") "+i);
counter++;
}
prime=true;
}
}
}
https://github.com/alexmitev/ProgrammingBasics/tree/master/MathForProgrammers
Тук написах домашното = готов код.
Ако има нужда да разясня нещо, докъдето ми се разпростират знанията, разбира се:)
Здравей Алекс,
Прегледах кода ти, и задачата CheckFibonacciAndPrimes ме обърка малко. По-точно, не мога да разбера ролята на a,b и temp.Мисля че аз самият изпускам нещо в логиката, и затова не мога да премина тази "бариера" към разбирането на кода. Ще се радвам да ми обясниш по-подробно. Благодаря предварително!
Edit: Погледнах кода пак след като написах този коментар, и схванах, че си ги използвал за изчисление на множеството на Фибоначи, и тогава сравняваш числата поотделно. :D Понякога тия неща идват като гръм от ясно небе..
Здрасти gsimeonov, да:
temp - пази поредното фибоначи число
а - първото фибоначи число - 0
б - второто фибоначи число - 1
counter - започва от две, тъй като вече имаме 1-ва и 2-ра позиция.
temp = a + b = 0 + 1 = поредицата вече изглежда така - 0, 1, 1(temp),
a = b = 1
b = temp = 1
Така се изместваме една позиция напред.
новата стойност стойност на темп е a + b = 1 + 1 = 2
Поредицата вече изглежда така - 0, 1, 1, 2(temp)
отново изместваме надясно:
а = b = 1
b = temp = 2
следващата позиция би била temp = a + b = 1 + 2 = 3
0, 1, 1, 2, 3
И т.н:)
Ето кода за показване на всички prime numbers от 0 до зададена от вас стойност, показвайки и позицията на съответния prime number. Писах задачите на LINQPad (който ви го препоръчвам) и затова ми е останал кода само на тази. Ако желаете, ще реша и останалите отново.
class PrimeNumbers
{
public static void Main() {
int amountOfPrimeNumbers, counter=0;
bool prime=true;
Console.WriteLine("Show prime numbers from 0 to (enter number): ");
amountOfPrimeNumbers=int.Parse(Console.ReadLine());
for (int i=2; i<=amountOfPrimeNumbers; i++)
{
for (int k=2; k<=amountOfPrimeNumbers; k++)
{
if (i!=k && i%k==0)
{
prime=false;
break;
}
}
if (prime)
{
Console.WriteLine("("+counter+") "+i);
counter++;
}
prime=true;
}
}
}