Вопрос № 116936: Здраствуйте, не могли бы вы, как опытные эксперты в своем не легком деле, помочь в написании задачи на языке си++, которая звучит, так:
"Даны вещественный массивы D[5][5], s[5][5]. Для каждого массива определить произведение редних арифметич...Вопрос № 116939: Уважаемые эксперты не могли бы вы помочь решить задачку:
"Даны целочисленные массивы C[5][4] D[5][4]. Для каждого массива определить максимальный и минимальный элементы среди элементов, расположенных в четных столбцах."
Заранее...Вопрос № 116949: Уважаемые эксперты не могли бы вы помочь в написании задачи:
"Даны вещественный массив A[5][4]. определить значение вещественного массива b[4] по правилу: b[j]=сумме значений j-го столбца массива A. Значение переменной j изменяется от 0 до 3...Вопрос № 117009: Здравствуйте! С Новым годом.
Помогите решить задачу:
Двумерные массивы.
Найти число элементов, расположенных в чётных строках, которые больше заданного числа К...Вопрос № 117017: Здравствуйте!
Есть ли у кого самоучители , руководства или линки(ссылки) по написанию игр на СС++? Хотелось бы получить эту информацию, "курсач" у знакомой девушки горит....Вопрос № 117091: Помогите пожалуцста. Нужно написать рекурсивную функцию для поиска чисел армстронга....
Вопрос № 116.936
Здраствуйте, не могли бы вы, как опытные эксперты в своем не легком деле, помочь в написании задачи на языке си++, которая звучит, так:
"Даны вещественный массивы D[5][5], s[5][5]. Для каждого массива определить произведение редних арифметических значений элементов, расположенных ниже и выше главной диагонали."
Отвечает: физик фрик
Здравствуйте, Зырянов Владимир Олеович!
int i,j,k;
int dim = 5;
double d1, d2, s1, s2;
d1=0;
d2=0;
s1=0;
s2=0;
k=0;
for (i=0; i<dim; i++)
{
for (j=0; j<dim; j++)
{
if( i > j)
{
d1+=d[i][j];
s1+=s[i][j];
k++;
}
if( i < j)
{
d2+=d[i][j];
s2+=s[i][j];
}
}
}
d1=d1/k;
d2=d2/k;
s1=s1/k;
s2=s2/k;
соответсвенно ответом будет d1*d2 и s1*s2
Ответ отправил: физик фрик (статус: 1-ый класс)
Ответ отправлен: 04.01.2008, 22:21
Вопрос № 116.939
Уважаемые эксперты не могли бы вы помочь решить задачку:
"Даны целочисленные массивы C[5][4] D[5][4]. Для каждого массива определить максимальный и минимальный элементы среди элементов, расположенных в четных столбцах."
Отвечает: X-men
Здравствуйте, Зырянов Владимир Олеович!
Вот вам программа. Запускайте в среде VC++.
Приложение:
Ответ отправил: X-men (статус: 3-ий класс)
Ответ отправлен: 04.01.2008, 23:01
Вопрос № 116.949
Уважаемые эксперты не могли бы вы помочь в написании задачи:
"Даны вещественный массив A[5][4]. определить значение вещественного массива b[4] по правилу: b[j]=сумме значений j-го столбца массива A. Значение переменной j изменяется от 0 до 3."
Отвечает: Евсюков Виталий Евгеньевич
Здравствуйте, Зырянов Владимир Олеович!
Было бы странно, если бы j менялась от 0 до, скажем, 10 ;)
Кусок кода смотрите в приложении.
Отвечает: X-men
Здравствуйте, Зырянов Владимир Олеович!
#include<iostream>
#include<conio.h>
using namespace std;
const int x=5,y=4;
void main () {
int A[x][y]={1,2,3,1,1,5,5,8,2,7,8,6,4,0,9,4,3,3,4,5};
int b[y],sum;
int i,j;
for (i=0; i<x; i++){
for (j=0; j<y; j++)
cout << A[i][j] << " ";
cout << endl;
}
cout << endl << endl;
for (j=0; j<y; j++){
for (i=0,sum=0; i<x; i++)
sum += A[i][j];
b[j] = sum;
cout << b[j] << " ";
}
getch();
}
Ответ отправил: X-men (статус: 3-ий класс)
Ответ отправлен: 04.01.2008, 23:23
Отвечает: Solar
Здравствуйте, Зырянов Владимир Олеович!
Код ищите в приложении.
Приложение:
Ответ отправил: Solar (статус: 2-ой класс)
Ответ отправлен: 05.01.2008, 03:47
Вопрос № 117.009
Здравствуйте! С Новым годом.
Помогите решить задачу:
Двумерные массивы.
Найти число элементов, расположенных в чётных строках, которые больше заданного числа К
Отвечает: X-men
Здравствуйте, Слободин Алексей Алексеевич!
#include<iostream>
#include<conio.h>
using namespace std;
const int x=5;
void main () {
int a[x][x];
int i,j;
int k,count=0;
cout << "Enter " << x*x << " elements: ";
for (i=0; i<x; i++)
for (j=0; j<x; j++)
cin >> a[i][j];
cout << endl << "Enter k: ";
cin >> k;
for (i=0; i<x; i++)
for (j=1; j<x; j+=2)
if (a[i][j] > k)
count++;
cout << endl << "Kol-vo = " << count;
getch();
}
Ответ отправил: X-men (статус: 3-ий класс)
Ответ отправлен: 05.01.2008, 11:25
Отвечает: Maksim Trofimov
Здравствуйте, Слободин Алексей Алексеевич!
А чего здесь решать? Бежим по столбцам массива и проверяем каждый его элемент - больше ли он числа k?, если да, то инкримируем счетчик...
#include <stdio.h>
int main(void)
{
int arr[][5] = { {-1,2,3,-4,5}, {6,7,-8,9,-10}, {11,-12,-13,14,15} };
const int k = 5;
unsigned i, j, r = 0;
Ответ отправил: Maksim Trofimov (статус: 3-ий класс)
Ответ отправлен: 05.01.2008, 11:33 Оценка за ответ: 5 Комментарий оценки: Классно!
Отвечает: Евсюков Виталий Евгеньевич
Здравствуйте, Слободин Алексей Алексеевич!
Если считать, что у нас массив n на m, то можно воспользоваться следующим отрывком кода.
Приложение:
--------- I Aear can ve na Mar
Ответ отправил: Евсюков Виталий Евгеньевич (статус: 2-ой класс)
Ответ отправлен: 05.01.2008, 12:15 Оценка за ответ: 5 Комментарий оценки: Отличное дополнение!
Отвечает: Solar
Здравствуйте, Слободин Алексей Алексеевич!
Код в приложении.
Приложение:
Ответ отправил: Solar (статус: 2-ой класс)
Ответ отправлен: 05.01.2008, 17:36 Оценка за ответ: 5
Вопрос № 117.017
Здравствуйте!
Есть ли у кого самоучители , руководства или линки(ссылки) по написанию игр на СС++? Хотелось бы получить эту информацию, "курсач" у знакомой девушки горит.
Отправлен: 05.01.2008, 12:06
Вопрос задал: KuchumHan (статус: Студент)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Евсюков Виталий Евгеньевич
Здравствуйте, KuchumHan!
Старайтесь скорее потушить курсач ;)
В остальном же ориентируйтесь на http://www.gamedev.ru
--------- I Aear can ve na Mar
Отвечает: Maksim Trofimov
Здравствуйте, Виктор Малейчик!
А в чем собственно проблема? Рекурсия, это когда функция вызывает саму себя...
Смотрите код на C:
#include <stdio.h>
#include <math.h>
// возвращает количество знаков в числе num
unsigned numlen(unsigned long num)
{
unsigned res = 0;
unsigned long n = num;
while((n/=10)!= 0)
res++;
return ++res;
}
// возвращает 1, если переданное число - число армстронга
int isarm(unsigned long num)
{
unsigned dig;
unsigned long sum = 0;
unsigned long n = num;
unsigned len = numlen(num);
if(num == sum)
return 1;
return 0;
}
// выводит на консоль числа сильнорукого из диапазона set-end
// вызывает саму себя...
void arm(unsigned long set, unsigned long end)
{
if(set <= end)
{
if(isarm(set))
printf("%d
", set);
arm(set+1, end);
}
}
int main(void)
{
// на моей машине число 93084 - это предел - происходит
// переполнение стека, так как слишком много рекурсивных вызовов :)
arm(0, 93084);
return 0;
}
Ответ отправил: Maksim Trofimov (статус: 3-ий класс)
Ответ отправлен: 06.01.2008, 04:37 Оценка за ответ: 4 Комментарий оценки: Проблема собственно в преподавателе, я писал что-то подобное, но она утверждает что если в функции используются циклы, то это уже не рекурсия. Вот я и хотел узнать как можно написать иначе.