• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Задача: Высота треугольника, простые числа в послд., кратность

  • Автор темы kyrtiv
  • Дата начала
K

kyrtiv

Всем привет!Поступил на первый курс!У нас програмирование на Borland C++!Уже начали грузить!Кому не тяжело решите 4 программы!Но напишите так чтоб било выдно чо писал первокурсник а не програмист!
Вот условия:
1.Вычислить высоту треугольника, если известны его площадь и разница между основой и высотой.
2.Найти в первой тысяче натуральных чисел только те числа, которые являются простыми. вывести их на экран по одному в каждой строке.
3.Напишите программу, которая печатает в направлении роста все делители введенного числа.
4.Пользователь вводит два числа. Определить, делящееся ли одно число на второе без остатка. Если нет, предложить ближайшее целое, что удовлетворяет этому условию.
 
V

vital

Сколько? В смысле ЗА сколько? 10$ и через 30 мин сделаю. Читайте правила раздела. Вы ничего не сделали и хотите что бы вам на блюдечке принесли решение. Так не бывает. Вобщем, читайте правила раздела.
 
D

DarkKnight

C++:
/*
Вот условия:
1.Вычислить высоту треугольника, если известны его площадь и разница между основой и высотой.
2.Найти в первой тысяче натуральных чисел только те числа, которые являются простыми. вывести их на экран по одному в каждой строке.
3.Напишите программу, которая печатает в направлении роста все делители введенного числа.
4.Пользователь вводит два числа. Определить, делящееся ли одно число на второе без остатка. Если нет, предложить ближайшее целое, что удовлетворяет этому условию. 
*/

/*
codeby.net
Autor: DarkKnight125
*/
#include <iostream>

using namespace std;

void main(void)
{
//1.Вычислить высоту треугольника, если известны его площадь и разница между основой и высотой.
setlocale(LC_ALL,"Russian");
cout<<"------------------------------------------------------"<<endl
<<"Вычисление высоты треугольника"<<endl
<<"(если известны площадь и разница основания и высоты)"<<endl
<<"------------------------------------------------------"<<endl<<endl;
double S;//Площадь
double dh; //Разница между основание и высотой
cout<<"Введите площадь S = ";
cin>>S;
cout<<"Введите разницу основания и высоты dh = ";
cin>>dh;
//т.к. прощадь треугольника равна S = 1/2 * a * h (где h - высота, а основание), то 2S = (h+dh)*h - для наших входных данных
//после преобразований получим квадратное уровнение типа h^2 +dh*h - 2S = 0;
double Des = dh*dh - (4*1*(-2*S)); //Дескрименант квадратного уровнения
double h = (-dh + sqrt(Des))/2; //В нашем примере будет 2 корня, но нам интересен только положительный
//Корень нашего уровнения и есть высота (h)
cout<<"Высота треугольника h = "<<h<<endl<<endl;
//2.Найти в первой тысяче натуральных чисел только те числа, которые являются простыми. вывести их на экран по одному в каждой строке.
cout<<"------------------------------------------------------"<<endl
<<"Найти в первой тысяче натуральных чисел только те числа, которые являются простыми."<<endl
<<"(вывести их на экран по одному в каждой строке)"<<endl
<<"------------------------------------------------------"<<endl<<endl;
for (int i=1; i<=1000; i++) //Обойдем все числа от 1 до 1000;
{
bool isSample = true; //Предположим что число простое
for (int j=i-1; j>1; j--) //Обойдем все числа от i-1 до 2
{
if (i%j == 0) //Если хоть раз встретилось число на которое i делится без остатко, то число не простое
{
isSample = false; //поставим флаг 
break; //Выйдим из цикла заранее
}
}
if (isSample) cout<<"Число "<<i<<" простое"<<endl; //Если число все же простое выведим его на экран
}
cout<<endl;

//3.Напишите программу, которая печатает в направлении роста все делители введенного числа.
cout<<"------------------------------------------------------"<<endl
<<"Напечатать все делители числа"<<endl
<<"( в направлении роста)"<<endl
<<"------------------------------------------------------"<<endl<<endl;
int k;
cout<<"Введите исходное число k = ";
cin>>k; //Введем k
cout<<"Делители числа k :"<<endl;
for (int i=1; i<=k; i++) //Обойдем числа от 1 до k
{
if (k%i == 0) cout<<i<<" "; //если k делится на текущее число то выведим его на экран
}
cout<<endl;
//4.Пользователь вводит два числа. Определить, делящееся ли одно число на второе без остатка. 
//Если нет, предложить ближайшее целое, что удовлетворяет этому условию. 
cout<<"------------------------------------------------------"<<endl
<<"Определить, делящееся ли одно число на второе без остатка."<<endl
<<"(если нет, предложить ближайшее целое, что удовлетворяет этому условию)"<<endl
<<"------------------------------------------------------"<<endl<<endl;
int n1,n2; //Числа
cout<<"Введите первое числол n1 = ";
cin>>n1; //Ввод первого числа
cout<<"Введите второе числол n2 = ";
cin>>n2; //Ввод второго числа
if (n1%n2 == 0) //Проверим кратность первого на второе
cout<<"Числа делятся без остатка"<<endl; //Если делятся то все ок
else //Если не делятся, то
{
cout<<"Числа не делятся без остатка, ближайщий делитель : ";
for (int i=1; i<n2; i--) //Перебираем числа от 1 до n2-1
{
if (n1 % (n2-i) == 0) //Нам нужно найти ближайшее так что проверяем как n2-1
{
cout<<(n2-i);
break;
}
else if (n1 % (n2+i) == 0) //так и n2+1, как только первое будет найдено то выведим на экран и завершим цикл
{
cout<<(n2+i);
break;
}
}
}

}
 

Вложения

  • zd32306.jpg
    zd32306.jpg
    69,9 КБ · Просмотры: 464
L

lazybiz

DarkKnight125 ты прям меценат какой-то) куда не зайди везде DarkKnight125 молча пришел, задачу решил, ушел)
Тебя хлебом не корми, дай задачу решить))
Сорри за оффтоп.
 
D

DarkKnight

lazybiz, Лайз, просто думаю что нужно придерживаться того что "Ни одно сообщение - не останется без ответа"...
Поисковики будет все это дело индексировать, и вот увидишь месяц - 2 и народ потянется... Ну я так думаю ;-)))
А будет народ будет веселее...

P.S. Еще бы бывалые вернулись обратно :-((((
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!