Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] Помогите решить задачу по С++

Закрытая тема
Настройки темы
C/C++ - [решено] Помогите решить задачу по С++

Новый участник


Сообщения: 15
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: Vadikan
Дата: 20-12-2011
Описание: правила
  1. По заданному натуральному(целому) числу, определить количество цифр и найти их сумму.
  2. По заданному натуральному(целому) числу, определить количество цифр и найти их сумму. Из указаного диапазона n и m
  3. Выполнить инвертирование трех одномерных массивов: А[20], В[10], С[15]. Написать функции: -Заполнение массива числами в диалоговом режиме. -Вывода одномерного массива -Инвертирование одномерного массива.
  4. Определитьдля каждого из трех одномерных массивов : A[45], B[10], C[20] сколько раз в них встретились два подряд идущих нулевых элемента. Написать функции: -Заполнение массива числами в диалоговом режиме. -Вывода одномерного массива. -Определения количества двух подряд идущих нулевых элементов в одномерном массиве.


Выдержка из правил форума
Цитата:
Вопросы, в которых нет кода и следов ваших размышлений над поставленной задачей также будут перенесены в закрытую тему - Уголок Ленивого Программиста

Исходное сообщение автора

Задание: Написать прогу, которая по заданному натуральному числу определяет количество цифр в нем и их сумму.Протестируйте функцию десятичных чисел из некоторого диапазона от n до m.

Отправлено: 14:54, 27-09-2008

 

Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


fly85, Вот так, писалось под Borland C++ Builder 6.0. В строках cout<<"..."; русский текст, это для понимания, при компиляции будут крякозяблики, просто заменить нужно будет текстовку на соответствующую английскую, или сделать чтобы консоль понимала кирилицу.
Код: Выделить весь код
// Для одномерного массива N, состоящего из 20 элементов действительного типа
// найти среднее арифметическое значение.
#include <iostream>
using namespace std;

int main()
{
  const int size = 20;  // Размер массива
  int array[size] = {0};  // Сам массив
  int total = 0;  // Результат суммирования всех значений
  int result; // Храним результат среднеарифметического
  int z;  // Просто чтобы окошко не закрывалось

  // Считываем 20 значений с клавиатуры и сохраняем в массив
  for(int i = 0; i < size; i++){
    cout<<"Введите значение в элемент массива [ "<<i<<" ] = ";
    cin>>array[i];
   }

  cout<<"Подсчёт среднего значения"<<endl;

  // Подсчёт общей суммы значений
  for(int i = 0; i < size; i++)
    total += array[i];

  result = total / size;  // Находим среднее арифметическое

  cout<<"Среднеарифметическое значение равно = "<<result<<endl;  // Выводим результат

  cin>>z;
  return 0;
}
//---------------------------------------------------------------------------

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:38, 18-01-2010 | #51



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 2
Благодарности: 1

Профиль | Отправить PM | Цитировать


Спасибо! Объяснение как раз кстати!!!!
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:04, 18-01-2010 | #52


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите по С++ решить задачу:
Для одномерного массива х состоящий из 12 элементов действительного типа подсчитать количество элементов из интервала | a, b | (a, b любые целые числа а <b)

Спасибо!

Отправлено: 17:09, 19-01-2010 | #53


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


goor88, Если правильно понял задачу, (просуммировать значения содержащиеся в элементах массива от a до b), если так, то вот. Хотя сомневаюсь что правильно понял постановку задачи.

Код: Выделить весь код
// Для одномерного массива х состоящий из 12 элементов действительного типа
// подсчитать количество элементов из интервала  | a, b | (a, b любые целые числа а <b).
#include <iostream>
using namespace std;

int main()
{
  const int size = 12;  // Размер массива
  int array[size] = {0};  // Сам массив
  int total = 0;  // Результат суммирования всех значений
  int a, b; // Начало и конец интервала.
  int z;  // Просто чтобы окошко не закрывалось

  // Считываем 12 значений с клавиатуры и сохраняем в массив
  for(int i = 0; i < size; i++){
    cout<<"Введите значение в элемент массива [ "<<i<<" ] = ";
    cin>>array[i];
   }

  // Вводим значения интервала, без проверки выхода за диапазон массива
  cout<<"Введите начало интервала = "<<endl;
  cin>>a;
  cout<<"Введите конец интервала = "<<endl;
  cin>>b;

  cout<<"Подсчёт среднего значения"<<endl;

  // Подсчёт общей суммы значений
  for(int i = a; i < b; i++)
    total += array[i];

   cout<<"Общая сумма значений элементов массива от "A" до "B" = "<<total<<endl;  // Выводим результат

  cin>>z;
  return 0;
}
//---------------------------------------------------------------------------

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:14, 19-01-2010 | #54


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо огромное!!! Вы настоящий профессионал!!!

Если вам не трудно и эту сможете решить?
Для одномерного массива V, состоящий из 15 действительных чисел, найти сумму элементов.
Большое спасибо!!!
PS: Это последняя.

Последний раз редактировалось Drongo, 19-01-2010 в 21:57. Причина: Я далеко не профессионал. ;)


Отправлено: 21:38, 19-01-2010 | #55


Новый участник


Сообщения: 33
Благодарности: 12

Профиль | Отправить PM | Цитировать


goor88, Если задание формулировалось именно так. как вы тут сказали( в смысле нет никаких требований к реализации), то вот решение:

Код: Выделить весь код
//Для одномерного массива V, состоящий из 15 действительных чисел, найти сумму элементов.

#include <iostream>		// включение стандартной библиотеки ввода - вывода
using namespace std;	// использование пространства имен std

const int size = 15;		//задается переменная. используемая для определения размерности массива

int main()
{
	int v[size];			// объявление самого массива

	cout << "Введите " << size << " цифр, которые будут содержаться в массиве" << endl;
	for(int i = 0; i<size; i++)
		cin >> v[i];			// цикл заполнения массива с консоли

	int summ = 0;				// объявление и инициализация переменной для хранения суммы

	for(int q = 0; q<size; q++)
		summ += v[q];			// суммирование всех элементов массива

	cout << "Summ = " << summ << endl;	// вывод результата на экран

	return 0;
}

Последний раз редактировалось Lisiy_egik, 20-01-2010 в 05:49.

Это сообщение посчитали полезным следующие участники:

Отправлено: 02:14, 20-01-2010 | #56


Новый участник


Сообщения: 33
Благодарности: 12

Профиль | Отправить PM | Цитировать


Cutegirl1645, ну не знаю какие были требования к выполнению задания, но вот я так сделал, компилится без ошибок, все работает, проверку на ошибки сама доделаешь, а то я и так полтора часа назад курить собирался, да на твой пост наткнулся.

в общем:

main.cpp:
Код: Выделить весь код
//Написать программу, которая подводит итоги конкурса "5 лучших товаров года". Оценка товара производится
//по пятибалльной системе. Программа должна получать от пользователя число людей, давших товару определенный
//бал, вычислить общее количество проголосовавших за данный товар людей и число набранных баллов, и после этого 
//упорядочить список (методом пузырька с простым алгоритмом) в соответствии с набранным количеством баллов.
//Сортировку оформить в виде функции.

#include <iostream>
#include "rus8.h"
#include "goods.h"
using namespace std;

int main()
{
	rus();

	goods *arr = new goods[g];

	get_point(arr);
	set_people(arr);
	set_spoint(arr);
	get_result(arr);
	print_result(arr);

	delete [] arr;

	return 0;

}
goods.h
Код: Выделить весь код
#pragma once
#include <iostream>
using namespace std;

const int sp = 5;  // size point кол-во баллов в системе оценивания
const int sn = 30; // size name макс кол-во символов в названии товара
const int g = 5; // кол-во товаров

struct goods
{
	int poin[sp];
	char name[sn];
	int spoint;
	int people;
};

void get_point(goods *);
void set_people(goods *);
void set_spoint(goods *);
void get_result(goods *);
void print_result(goods *);
goods.cpp
Код: Выделить весь код
#include "goods.h"

void get_point(goods *arr)
{
	for(int i = 0; i < g ; i++)
	{
		cout << "Введите наименование (макс длинна 30 символов) : ";
		cin >> arr[i].name;
		for (int q = 0; q < sp; q++)
		{
			cout << endl << "Введите кол-во людей оценивших этот товар в " << (q+1) << " балл(а)";
			cin >> arr[i].poin[q];
		}
	}
	cout << endl;
}

void set_people(goods *arr)
{
	for(int i = 0; i < g; i++)
	{
		arr[i].people = 0;
		for(int q = 0; q < sp; q++)
			arr[i].people = (arr[i].people + arr[i].poin[q]);
	}
}

void set_spoint(goods *arr)
{
	for(int i = 0; i < g; i++)
	{
		arr[i].spoint = 0;
		for(int q = 0; q < sp; q++)
			arr[i].spoint += (arr[i].poin[q]*(q+1));
	}
}
void get_result(goods *arr)
{
	goods temp;

	for(int i = 0; i < g; i++)
	{
		for(int q = (g-1); q > i; q--)
		{
			if(arr[q-1].spoint < arr[q].spoint)
			{
				temp = arr[q-1];
				arr[q-1] = arr[q];
				arr[q] = temp;
			}
		}
	}
}


void print_result(goods *arr)
{
	for(int i = 0; i < g; i++)
	{
		cout << (i+1) << "-е место занял товар : " << arr[i].name << endl;
		cout << "Набравший : " << arr[i].spoint << " баллов" << endl;
		cout << "Всего проголосовавших за этот товар : " << arr[i].people << endl << endl;
	}
}
rus8.h
Код: Выделить весь код
#ifndef _RUS_H
    #define _RUS_H

    #include <locale.h>

    inline void rus( void ) 
    {     
        setlocale( LC_CTYPE, ".1251" );
        setlocale( LC_MONETARY, ".1251" );

        return;
    }

#endif
с тебя пиво, я думаю оно того стоит) даже если не за прогу, то в утеху мне, за то. что я сегодня экзамен по программированию провалил...

Последний раз редактировалось Lisiy_egik, 20-01-2010 в 14:17.

Это сообщение посчитали полезным следующие участники:

Отправлено: 05:23, 20-01-2010 | #57


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Большое человеческое СПАСИБО !!!

Отправлено: 07:15, 20-01-2010 | #58


Новый участник


Сообщения: 28
Благодарности: 2

Профиль | Отправить PM | Цитировать


Сделайте, пожалуйста, кому не сложно, три задачки по C++

1.Структуры(записи) и программирование информационных задач
Разработать программу регистрации кандидатов в депутаты. Для каждого из кандидатов хранятся:
* Фамилия, имя и отчество.
* Возраст.
* Профессия.
* Наименование партии.
* Номер избирательного округа.
* Судимость.

2. Работа с файлами
Обеспечить хранение данных в файлах для программы, разработанной в рамках задания 1.

3. Динамические структуры данных
Переделать задание 1, используя динамическую структуру данных для хранения данных.

Отправлено: 07:05, 26-01-2010 | #59


Новый участник


Сообщения: 33
Благодарности: 12

Профиль | Отправить PM | Цитировать


Цитата Champ10n:
Сделайте, пожалуйста, кому не сложно, три задачки по C++ »
это уже перебор. как бы тут можно подсказать в случае. если что-нибудь не получается, а вот если просто "лень" делать и свалить это на другого - это уже наглость.

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

мб сегодня выложу тебе решение

Отправлено: 12:16, 27-01-2010 | #60



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] Помогите решить задачу по С++

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
C/C++ - Помогите решить задачу Urann Программирование и базы данных 11 14-05-2013 11:44
Разное - Помогите решить задачу в Excel Dgonny Программирование и базы данных 2 16-11-2009 04:11
C/C++ - Помогите решить задачу zdughi Программирование и базы данных 1 01-05-2009 06:03
помогите решить задачу snikers Программирование и базы данных 2 27-08-2004 01:57
помогите решить задачу Guest Программирование и базы данных 2 21-05-2004 11:23




 
Переход