Предмет: Химия, автор: del0rian

При нагріванні до певної температури 30г оцтової кислоти та 14,4г безводного метанолу в присутності сульфатної кислоти одержали рівноважну суміш. При дії на суміш надлишком барій нітрату утворилось 11,65г осаду. Відомо, що при дії на таку ж за складом і масою суміш надлишком питної соди виділяється газ об'ємом 8,96л (н.у.). Визначте кількість речовини кожного компонента рівноважної суміші.

Ответы

Автор ответа: mrvladimir2
0
Дано:
m(CH3COOH) = 30 г
m(CH3OH) = 14,4 г
m(BaSO4) = 11,65 г
V(CO2) = 8,96 л
Знайти:
n(CH3COOH)=?
n(CH3OH)=?
n(H2SO4)=?
n(CH3COOCH3)=?
n(H2O)=?

Розв'язок.
СH3COOH + CH3OH ⇄CH3COOCH3 + HOH   (1)
M(CH3COOH) = 60 г/моль
M(CH3OH) = 32 г/моль
M(H2SO4) = 98 г/моль
M(BaSO4) = 233 г/моль
M(HNO3) = 63 г/моль
M(CH3COOCH3)=74 г/моль
M(H2O) = 18 г/моль
За умовами задачи:
n(CH3COOH)= 30 г/60 г/моль = 0,5 моль
n(CH3OH) = 14.4 г/32 = 0,45 моль

H2SO4+BaSO4 = BaSO4↓+2HNO3
n(BaSO4) = 11,65 г/233 г/моль = 0,05 моль
n(H2SO4) = 0,05 моль

СH3COOH + NaHCO3 = CH3COONa + H2O + CO2↑
n(CO2) = 8,96 л/22,4 л/моль = 0,4 моль
n(CH3COOH)= 0,4 моль

В рівноважній системі залишилось:
n(H2SO4) = 0.05 моль
n(CH3COOH) = 0,4 моль 
n(CH3OH) = 0,45 моль - 0,1 моль =0,35 моль 
n(CH3COOCH3) = 0,1 моль за рівняннм (1)
n(H2O) = 0.1 моль за рівнянням (1)

Відповідь: 0,4 моль CH3COOH, 0,35 моль CH3OH, 0,05 моль H2SO4, 0,1 моль CH3COOCH3, 0,1 моль Н2О
Автор ответа: del0rian
0
дуже дякую! у рівнянні 2 опечатка: до реакції Ba(NO3)2. ваше рішення правильне, але не повне, тому що в рівноважній системі також присутня вода. якщо розглядати суміш діоксиду вуглецю з водою як кислоту у рівнянні 3, то залишиться 0,1 моль води (за рівнянням 1); якщо враховувати воду, що утворилась у реакції 3, то кількість води у рівноважній системі дорівнює 0,1 (з реакції 1) + 0,4 (з реакції 3), всього 0,5 моль. як правильніше розрахувати кількість води?
Автор ответа: mrvladimir2
0
я її не врахував. так води буде теж 0,1 моль
Автор ответа: mrvladimir2
0
в реакції з питною содою воду не враховують, тому що в рівноважній системі її не було.
Похожие вопросы
Предмет: Информатика, автор: MaryKod
Pascal!!!!!
Исправьте ошибки в задаче


Program Partiii;
Var n, NumParties, i, j, t: integer;
Count:array[1..10] of integer;
s: string[50];
Names: array[1..10] of string;
Begin
NumParties:=0;
ReadLn(N);
for i:=1 to NumParties do
begin
max:=count[i];
n:=i;
for l:=1 to NumParties do
begin
if count[l]>max then
begin
max:=count[l];
n:=l;
end;
end;
if names[n]<>'' then begin
writeln (names[n]);
count[n]:=-1;
names[n]:='';
end;
end;
for i:=2 to NumParties do
if Count[i-1]>n then
begin
n:=Count[i];
t:=i;
end;
WriteLn(Names[t])
end.

Вот какое было задание,
Доработайте программу так, чтобы она решала следующую задачу:
1) Программа должна вывести список всех партий, встречающихся в исходном списке, в порядке убывания количества голосов, отданных за эту партию. При этом название каждой партии должно быть выведено ровно один раз, вне зависимости от того, сколько голосов было отдано за данную партию. Пример выходных данных для приведенного выше примера входных данных:
Party three
Party two
Party one

2) На вход программы подается список, при этом некоторые голоса являются недействительными, в этом случае вместо названия партии записан один символ «.» (точка). Партия проходит в парламент, если за нее отдано не менее 7% от общего числа действительных голосов (то есть от количества строк в списке, которые не равны «.»). Программа должна вывести список всех партий, прошедших в парламент, в произвольном порядке. При этом название каждой партии должно быть выведено ровно один раз, вне зависимости от того, сколько голосов было отдано за данную партию.