IPB

Здравствуйте, гость ( Вход | Регистрация )

> ЗАДАЧКА в С
@ Alenka @
сообщение 15.5.2011, 16:10
Сообщение #1


Новичок
*

Группа: Продвинутые
Сообщений: 6
Регистрация: 15.5.2011
Город: Грязи
Учебное заведение: ЛГПУ
Вы: студент



Дан массив из n четырехзначных натуральных чисел.Вывести на экран только те,у которых сумма первых двух цифр равна сумме двух последних.
помагите сделать в паскале
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов(1 - 4)
граф Монте-Кристо
сообщение 15.5.2011, 16:28
Сообщение #2


Доцент
******

Группа: Преподаватели
Сообщений: 3 840
Регистрация: 27.9.2007
Из: Старый Оскол
Город: Москва
Учебное заведение: МФТИ/МАИ
Вы: другое



Выкладывайте свои идеи и наработки. Если их нет и нет желания делать что-либо самостоятельно - обращайтесь в платный раздел.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
@ Alenka @
сообщение 15.5.2011, 16:33
Сообщение #3


Новичок
*

Группа: Продвинутые
Сообщений: 6
Регистрация: 15.5.2011
Город: Грязи
Учебное заведение: ЛГПУ
Вы: студент



function Summ(n:integer):boolean;
var a,b,c,d:byte;
begin
a:=n div 1000;
b:=n div 100 mod 10;
c:=n div 10 mod 10;
d:=n mod 10;
if a+b=c+d then Summ:=true
else Summ:=false;
end;
В программе
for i:=1001 to 9999 do
begin
if Summ(i) then writeln(i);
if i mod 20=0 then readln;//это чтоб все числа увидеть
end;
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
граф Монте-Кристо
сообщение 15.5.2011, 16:39
Сообщение #4


Доцент
******

Группа: Преподаватели
Сообщений: 3 840
Регистрация: 27.9.2007
Из: Старый Оскол
Город: Москва
Учебное заведение: МФТИ/МАИ
Вы: другое



Функция вроде правильно написана,а вот в программе 2 косяка. Во-первых, почему i от 1001 до 9999? У Вас этот массив уже дан,и числа там конкретные,а не все возможные четырёхзначные.
Во-вторых, Вам же надо на С писать. (IMG:style_emoticons/default/smile.gif) Pascal - это, конечно, хороший язык, но, всё-таки, не С.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergio Ramos
сообщение 15.5.2011, 19:30
Сообщение #5


Студент
**

Группа: Продвинутые
Сообщений: 86
Регистрация: 16.11.2010
Город: Saratov



C++
Код
#include "iostream"

using namespace std;

bool f (int x) {
    int a,b,c,d;
    a=x/1000;
    b=(x-a*1000)/100;
    c=(x-a*1000-b*100)/10;
    d=x%10;
    if(a+b==c+d) return true;
    else return false;}

int main () {
    int n;
    cin >> n;
    int *a=new int [n];
    for (int i=0;i<n;i++) {
        cin >> a[i];
        if (f(a[i])) cout << a[i] << " ";
    }
return 0;}

Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 25.5.2025, 22:53

Книжки в помощь: "Сборник заданий по высшей математике" Кузнецов Л.А., "Сборник заданий по высшей математике" Чудесенко В.Ф., "Индивидуальные задания по высшей математике" Рябушко А.П., и другие.




Зеркало сайта Решебник.Ру - reshebnik.org.ru