Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2010, 17:48   #1
OpenId
 
Регистрация: 18.03.2010
Сообщений: 8
По умолчанию Формат вывода и сложение массива

Все доброго здравия

2 вопроса у меня на повестке ночи

1) Как на экран вывести массив, чтобы независимо от размерности цифр, элементы были в ряд и друг над другом (двумерный массив)
т.е. 1....2....3....4
.....-1.. 0.5..3....5
......2...6.3...5....3

а не

1 2 3 4 5
-0.5 4 4 6 9
9.7 7 6 9 8 и .т.д


думал как-то через printf с параметрами, но не знаю как


2) суммирование элементов двумерного массива по условию
Задача: у одномерного массива всего 3 элемента.
И если элемент положительный, то проссумировать столбец двумерного массива, номер которого совпадает с номером элемента одномерного массива

Код:
for (i=0;i<n;i++)
{if (arr4[i]>0 && arr4[i]==i-1 )
{sum=0;
for (j=0;j<n;j++)
sum+=arr3[j][i];
cout<<"сумма элементов"<<i+1<<" равна сумме = "<<sum<<endl;
fprintf(f1,"%4.2lf",sum);
fprintf(f1,"\n");}}

Последний раз редактировалось OpenId; 08.12.2010 в 17:50. Причина: Исправил абру-кадабру
OpenId вне форума Ответить с цитированием
Старый 08.12.2010, 18:38   #2
JeyKip
Форумчанин
 
Регистрация: 18.09.2009
Сообщений: 133
По умолчанию

вот ответ на первый вопрос вместе с кодом...

Код:
#include "iostream"
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
using namespace std;

void main()
{
	int t1=0, t2=0;
	float mas[12];

	setlocale(0,"");
	srand(time(NULL));

	for (int j=0; j<12; j++)
	{
		mas[j] = (rand()%10500);
		mas[j]/=(rand()%15+1);
	}

		for (int j=0; j<3; j++)
		{
			for (int k=0; k<4; k++)
//10 - количество символов выводимого значения
//если символов меньше, они заполняются пробелами
//2 - количество символов в float после запятой
				printf("%10.2f",mas[j+k]);
			printf("%c",'\n');
		}

	getch();
}
JeyKip вне форума Ответить с цитированием
Старый 08.12.2010, 18:53   #3
JeyKip
Форумчанин
 
Регистрация: 18.09.2009
Сообщений: 133
По умолчанию

второй вопрос...сумма считается для номера столбца, которым является первое положительное значение в 3-х значном массиве...

Код:
#include "iostream"
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
using namespace std;

void main()
{
	int t1=0, t2=0;
	float mas[10][10];
	int mas2[3];
	float sum=0;

	setlocale(0,"");
	srand(time(NULL));
	for (int i=0; i<10; i++)
		for (int j=0; j<10; j++)
	{
		mas[i][j] = (rand()%10500);
		mas[i][j]/=(rand()%15+1);
	}

		for (int i=0; i<3; i++)
		{
			mas2[i] = rand()%9-5;
			if (mas2[i]>=0)
			{
				for (int k=0; k<10; k++)
					sum+=mas[k][mas2[i]];
				break;
			}
		}

	for (int i=0; i<10; i++)
	{
		for (int j=0; j<10; j++)	
			printf("%10.2f",mas[i][j]);
			printf("%c",'\n');
	}
		

		printf("%.3f",sum);

	getch();
}
JeyKip вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
КАК ПЕРЕДЕЛАТЬ ФОРМАТ mp4 В ФОРМАТ 3gp,MPEG4 kamalruslan Софт 4 20.08.2015 16:16
Формат вывода спецификатора E (e) Valter Общие вопросы C/C++ 0 13.11.2010 13:35
Не могу настроить формат вывода в БД alatir БД в Delphi 0 30.05.2010 18:19
Сложение в БД Oleg Romanchuk Помощь студентам 5 24.11.2009 09:30
Сложение Droid Общие вопросы Delphi 14 07.05.2008 13:23