Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Помощ за 2 задачи на C++

Featured Replies

Малко помощ за тези две задачи !!!! Немога да ги направя

1.Напишете програма, която по дадени координати (X, Y) и (P, Q) на две полета от шахматна дъска (8 на 8) определя дали ако в полето (X, Y) е разположен Цар, той бие полето (P, Q).

2.Да се състави програма, която намира най-голямата цифра в зададено цяло трицифрено число.

2.Да се състави програма, която намира най-голямата цифра в зададено цяло трицифрено число.

#include<iostream.h>

int main()

{

int n,a,b,c;

do

{

cout<<"vavedi tricifreno 4islo:";

cin>>n;

}while(n<100 || n>999);

a=(n%100)%10;

b=((n%100)-a)/10;

c=(n-a-b)/100;

if (a>=b && a>=c) {cout<<a; return 0;}

if (b>=a && b>=c) {cout<<b; return 0;}

if (c>=a && c>=b) {cout<<c; return 0;}

}

  • 1 месец по-късно...
2.Да се състави програма, която намира най-голямата цифра в зададено цяло трицифрено число.

#include<iostream.h>

int main()

{

int n,a,b,c;

do

{

cout<<"vavedi tricifreno 4islo:";

cin>>n;

}while(n<100 || n>999);

a=(n%100)%10;

b=((n%100)-a)/10;

c=(n-a-b)/100;

if (a>=b && a>=c) {cout<<a; return 0;}

if (b>=a && b>=c) {cout<<b; return 0;}

if (c>=a && c>=b) {cout<<c; return 0;}

}

Доста късно, но давам по-лесно решение на втората

#include <iostream>

using namespace std;

int main (){

int a,ed,des,st,max;

cin>>a;

ed=a%10;

des=a/10%10;

st=a/100;

max=ed;

if(des>max)max=des;

if(st>max)max=st;

cout<<max<<endl;

system("pause");

return 0;

}

Да обележа, че system("pause"); на състезания трябва да се маха, но едва ли задачата ти трябва за това.

Или може би:

#include <iostream>

using namespace std;


int main()

{

  int num,max=0,tmp;

  cin >> num;

  while(num){

	tmp=num%10;

	if(tmp>max)

	  max=tmp;

	num/=10;

  }

  cout << max << endl;

  return 0;

}
Ше работи за всички числа които обхваща тип int :angry: /едит Ето още по-хитро което ше работи за безкрайно големи числа:
#include <iostream>

using namespace std;


int main()

{

  char a,max=0;

  while(cin.get(a)){

	if(a=='\n')

	  break;

	if(max<a)

	  max=a;

  }

  cout << max << endl;

}

Редактирано от Progres (преглед на промените)

Или може би:

#include <iostream>

using namespace std;


int main()

{

  int num,max=0,tmp;

  cin >> num;

  while(num){

	tmp=num%10;

	if(tmp>max)

	  max=tmp;

	num/=10;

  }

  cout << max << endl;

  return 0;

}
Ше работи за всички числа които обхваща тип int :speak: /едит Ето още по-хитро което ше работи за безкрайно големи числа:
#include <iostream>

using namespace std;


int main()

{

  char a,max=0;

  while(cin.get(a)){

	if(a=='\n')

	  break;

	if(max<a)

	  max=a;

  }

  cout << max << endl;

}

#include <iostream>

#include <string>

using namespace std;

int max1=0;

string a;

int main ()

{cin>>a;

for (int i=0;i<a.size();i++)

max1=max((a-48),max1);

cout<<max1<<endl;

system ("pause");}

Това пък не зависи от дължината на числото :angry:biggrin.gif

Нека е малко по-интересно. biggrin.gif

#include <iostream>

#include <queue>

using namespace std;


int main()

{

  char tmp;

  priority_queue <char> num;

  while(cin.get(tmp) && tmp!='\n')

	num.push(tmp);

  cout << num.top() << endl;


  return 0;

}

  • 1 месец по-късно...

А можете ли да кажете как се прави първата задача , че на сестра ми са и дали съвсем същата ?

Благодаря.

  • 1 месец по-късно...

За задача 1 , кода който ми хрумва е,

// zad5.cpp : main project file.

#include "stdafx.h"

#include <iostream>

using std::cout;

using std::cin;

int main()

{ int x,y,p,q;

cout<<"Kordinati po X:"; cin>>x;

cout<<"Kordinati po Y:"; cin>>y;

cout<<"Kordinati po P:"; cin>>p;

cout<<"kordinati po Q:"; cin>>q;

if (x>0&&x<9&&y>0&&y<9&&p>0&&p<9&&q>0&&q<9) cout<<"Vuvedeni sa pravilni kordinati";

else

{

cout<<"Vuvejdate greshni kordinati";

system ("pause");

return 0;

}

if (x==p||y==q)

{

cout<<"Cordinatite na carq i drugata figura suvpadat";

system ("pause");

return 0;

}

if (1==abs(x-p)&&1==abs(y-q)) cout<<"Carq bie";

else cout<<"Carq e daleche";

system ("pause");

return 0;

}

сигурно може да си измисли и доста по опростен вариант...

  • 3 месеца по-късно...

Или може би:

#include <iostream>

using namespace std;


int main()

{

 int num,max=0,tmp;

 cin >> num;

 while(num){

	tmp=num%10;

	if(tmp>max)

 max=tmp;

	num/=10;

 }

 cout << max << endl;

 return 0;

}
Ше работи за всички числа които обхваща тип int :) /едит Ето още по-хитро което ше работи за безкрайно големи числа:
#include <iostream>

using namespace std;


int main()

{

 char a,max=0;

 while(cin.get(a)){

	if(a=='\n')

 break;

	if(max<a)

 max=a;

 }

 cout << max << endl;

}

...

Редактирано от capnemo
кирилица (преглед на промените)

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Публикацията ви съдържа термини, които не допускаме! Моля, редактирайте съдържанието си и премахнете подчертаните думи по-долу. Ако замените букви от думата със звездички или друго, за да заобиколите това предупреждение, профилът ви ще бъде блокиран и наказан!
Напишете отговор в тази тема...

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    26%
    Дарени 256.00 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.