Автор |
Сообщение |
Мишаня
Репутация: –2
Возраст: 18
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 40
Стаж: 10 месяцев
|
[] 06.12.2007 0:46 Язык Си-=(( |
|
|
Ввести целую матрицу размера 3х4 Получить вектор В(3) элементы которого равны соответственно суммам элементов строк.Только ТЕперь используя Операторы while, и do while.
_________________ слоник-=)
|
|
Вернуться к началу |
|
|
Tiffany
Клёвая девчонка
Репутация: +14
Возраст: 20
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 2745
Стаж: 4 года 2 месяца
|
[] 06.12.2007 12:40 |
|
|
Например, можно ввести переменную, допустим V=1.
При вводе каждого элемента увеличивать его на ед-цу, Вводить числа, пока V не станет =12
Просто все FOR заменить на WHILE и DO WHILE, придумав новые условия ;-)
Добавлено спустя 1 минуту 5 секунд:
Или вводить числа, пока не нажмешь ENTER. если нажал энтер, а матрица не закончена, дополнить нулями.
_________________ Луна, я вижу лишь тебя. Но ты видишь несоизмеримо больше.
Ответь мне, Луна, смотрит ли та, чьё имя я берегу, вечерами вверх, на небо.
Или, быть может, мысли её столь высоки, что нет нужды поднимать взгляда? (с) А. Чёрный
|
|
Вернуться к началу |
|
|
crazy hand
Модератор форума
Репутация: +2
Возраст: 71
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 296
Стаж: 1 год 1 месяц
|
[] 06.12.2007 15:11 |
|
|
Я думаю, сие чудо будет выглядеть примерно так:
Код: #include <iostream>
using namespace std;
#define ROW 3
#define COL 4
void main()
{
int matrix[ROW][COL];
int i=0,j=0;
int vector[ROW];
cout << "Matrix " << ROW << "x" << COL << endl;
cout << "Pls, input " << ROW*COL << " elements :" << endl;
while(i<ROW)
{
while(j<COL)
{
cin>>matrix[i][j++];
}
j=0;
i++;
}
i=0; // обнуляем индекс
cout << "Your matrix : " << endl;
do
{
do
{
cout << matrix[i][j] << "\t";
j++;
}while(j<COL);
i++;
j=0;
cout << endl;
}while(i<ROW);
i=0; // обнуляем индекс
while(i<ROW)
{
vector[i] = 0;
while(j<COL)
{
vector[i]+=matrix[i][j];
j++;
}
i++;
j=0;
}
cout << "Vector : " << endl;
i=0;
do
{
cout << vector[i++] << "\t" ;
}while(i<ROW);
cout << endl;
}
Уродство конечно! =) Не люблю операторы while/do - с ними некрасивый код получается! =)
_________________ Правила раздела "Помоги студенту"
"В любом деле важнее всего исполнение" Joseph Addison
|
|
Вернуться к началу |
|
|
Tiffany
Клёвая девчонка
Репутация: +14
Возраст: 20
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 2745
Стаж: 4 года 2 месяца
|
[] 06.12.2007 15:20 |
|
|
crazy hand
Хотелось заставить человека подумать.. ехх..
_________________ Луна, я вижу лишь тебя. Но ты видишь несоизмеримо больше.
Ответь мне, Луна, смотрит ли та, чьё имя я берегу, вечерами вверх, на небо.
Или, быть может, мысли её столь высоки, что нет нужды поднимать взгляда? (с) А. Чёрный
|
|
Вернуться к началу |
|
|
crazy hand
Модератор форума
Репутация: +2
Возраст: 71
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 296
Стаж: 1 год 1 месяц
|
[] 06.12.2007 15:48 |
|
|
А так подумал я - у меня такая утренняя зарядка - написать прогу человеку на freestudents =)
_________________ Правила раздела "Помоги студенту"
"В любом деле важнее всего исполнение" Joseph Addison
|
|
Вернуться к началу |
|
|
Weman
Репутация: +5
Возраст: 20
Гороскоп:
Пол:
Сообщения: 536
Стаж: 1 год 11 месяцев
|
[] 06.12.2007 15:51 |
|
|
crazy hand ну ты и спать
_________________ Завтранах-универсальный ответ на любую просьбу.
|
|
Вернуться к началу |
|
|
crazy hand
Модератор форума
Репутация: +2
Возраст: 71
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 296
Стаж: 1 год 1 месяц
|
[] 06.12.2007 16:04 |
|
|
Weman
)) Я встал пол третьего! =) Прошлой ночью просто час всего спал.
_________________ Правила раздела "Помоги студенту"
"В любом деле важнее всего исполнение" Joseph Addison
|
|
Вернуться к началу |
|
|
Мишаня
Репутация: –2
Возраст: 18
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 40
Стаж: 10 месяцев
|
[] 06.12.2007 18:25 |
|
|
РЕбят, а если вот в этой программе:
#include <stdio.h>
#include <conio.h>
void main()
{
int massiv[3][4]; //массив
int rez[3];
int i=0;
int j=0;
int sum=0;
clrscr();
//вводим массив
for (i=0;i<3;i++) {
for (j=0;j<4;j++) {
printf("Введите элемент массива [%i][%i]=", i,j);
scanf("%i",&massiv[i][j]);
}
}
//выводим на экран введенный массив
printf("\nВведенный массив:\n");
for (i=0;i<3;i++) {
for (j=0;j<4;j++)
printf("%2i ",massiv[i][j]);
printf("\n");
}
//ищем сумму по строкам и записывае в новый массив
for (i=0;i<3;i++){
sum=0;
for(j=0;j<4;j++)
sum+=massiv[i][j];
rez[i]=sum;
}
printf("\nРезультат:\n");
for (i=0;i<3;i++)
printf("%2i ",rez[i]);
printf("\nДля выхода из программы нажмите любую клавишу");
getch();
}
заменить на while? и do while нужно только:
for (i=0;i<3;i++){
sum=0;
for(j=0;j<4;j++)
sum+=massiv[i][j];
rez[i]=sum;
}
printf("\nРезультат:\n");
for (i=0;i<3;i++)
printf("%2i ",rez[i]);
_________________ слоник-=)
|
|
Вернуться к началу |
|
|
Мишаня
Репутация: –2
Возраст: 18
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 40
Стаж: 10 месяцев
|
|
Вернуться к началу |
|
|
Weman
Репутация: +5
Возраст: 20
Гороскоп:
Пол:
Сообщения: 536
Стаж: 1 год 11 месяцев
|
|
Вернуться к началу |
|
|
Мишаня
Репутация: –2
Возраст: 18
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 40
Стаж: 10 месяцев
|
[] 09.12.2007 21:32 |
|
|
ДА, заменить надо и на тот, и на тот
_________________ слоник-=)
|
|
Вернуться к началу |
|
|
Weman
Репутация: +5
Возраст: 20
Гороскоп:
Пол:
Сообщения: 536
Стаж: 1 год 11 месяцев
|
[] 10.12.2007 21:27 |
|
|
C while будет так:
Код: i=0;
while(i<3){
sum=0;
j=0;
while(j<4){
sum+=massiv[i][j];
j++;
}
rez[i]=sum;
i++;
}
С do-while так:
Код: i=0;
do{
sum=0;
j=0;
do{
sum+=massiv[i][j];
j++;
}while(j<4);
rez[i]=sum;
i++;
}while(i<3);
_________________ Завтранах-универсальный ответ на любую просьбу.
|
|
Вернуться к началу |
|
|
Мишаня
Репутация: –2
Возраст: 18
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 40
Стаж: 10 месяцев
|
[] 10.12.2007 21:34 |
|
|
ПРосьба ЗАкрыть ТЕму.
Weman
Спасибо.
_________________ слоник-=)
|
|
Вернуться к началу |
|
|
Tiffany
Клёвая девчонка
Репутация: +14
Возраст: 20
Гороскоп:
Пол:
Откуда: Санкт-Петербург
Сообщения: 2745
Стаж: 4 года 2 месяца
|
[] 10.12.2007 21:37 |
|
|
_________________ Луна, я вижу лишь тебя. Но ты видишь несоизмеримо больше.
Ответь мне, Луна, смотрит ли та, чьё имя я берегу, вечерами вверх, на небо.
Или, быть может, мысли её столь высоки, что нет нужды поднимать взгляда? (с) А. Чёрный
|
|
Вернуться к началу |
|
|
|
|